des

package
v0.0.0-...-9abeaa0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 29, 2021 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

Package des implements the Data Encryption Standard (DES) and the Triple Data Encryption Algorithm (TDEA) as defined in U.S. Federal Information Processing Standards Publication 46-3.

DES is cryptographically broken and should not be used for secure applications.

Index

Examples

Constants

View Source
const BlockSize = 8

The DES block size in bytes.

Variables

This section is empty.

Functions

func NewCipher

func NewCipher(key []byte) (cipher.Block, error)

NewCipher creates and returns a new cipher.Block.

func NewTripleDESCipher

func NewTripleDESCipher(key []byte) (cipher.Block, error)

NewTripleDESCipher creates and returns a new cipher.Block.

Example
// NewTripleDESCipher can also be used when EDE2 is required by
// duplicating the first 8 bytes of the 16-byte key.
ede2Key := []byte("example key 1234")

var tripleDESKey []byte
tripleDESKey = append(tripleDESKey, ede2Key[:16]...)
tripleDESKey = append(tripleDESKey, ede2Key[:8]...)

l := log.Default
l.HexDump("tripleDESKey", tripleDESKey)
_, err := NewTripleDESCipher(tripleDESKey)
if err != nil {
	panic(err)
}

// See crypto/cipher for how to use a cipher.Block for encryption and
// decryption.
Output:

Types

type Des

type Des interface {
	Encode(src, key interface{}) stream.Interface
	Decode(dst, key interface{}) stream.Interface
}

https://blog.51cto.com/u_9634496/3088251 区块链背后的信息安全(2) DES、3DES加密算法原理及其GO语言实现

func New

func New() Des

type KeySizeError

type KeySizeError int

func (KeySizeError) Error

func (k KeySizeError) Error() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL