Example #1
0
func Create(customSettings settings.Settings, data *DataToBeTokenized) (string, error) {
	err := customSettings.Check()

	if err != nil {
		return "", err
	}

	aesCipherBlock, _ := aes.NewCipher([]byte(customSettings.CipherKey))
	aesEncrypter := cipher.NewCFBEncrypter(aesCipherBlock, []byte("abcdefghabcdefgh"))

	serializedData := serialize(data)
	encryptedData := make([]byte, len(serializedData.Bytes()))

	aesEncrypter.XORKeyStream(encryptedData, serializedData.Bytes())
	return base64.StdEncoding.EncodeToString(encryptedData), nil
}