3 #ifndef CRYPTOPP_SALSA_H
4 #define CRYPTOPP_SALSA_H
8 NAMESPACE_BEGIN(CryptoPP)
13 static const char *StaticAlgorithmName() {
return "Salsa20";}
19 void CipherSetKey(
const NameValuePairs ¶ms,
const byte *key,
size_t length);
20 void OperateKeystream(KeystreamOperation operation, byte *output,
const byte *input,
size_t iterationCount);
21 void CipherResynchronize(byte *keystreamBuffer,
const byte *IV,
size_t length);
22 bool CipherIsRandomAccess()
const {
return true;}
23 void SeekToIteration(lword iterationCount);
24 #if CRYPTOPP_BOOL_X86 || CRYPTOPP_BOOL_X64
25 unsigned int GetAlignment()
const;
26 unsigned int GetOptimalBlockSize()
const;
43 static const char *StaticAlgorithmName() {
return "XSalsa20";}
49 void CipherSetKey(
const NameValuePairs ¶ms,
const byte *key,
size_t length);
50 void CipherResynchronize(byte *keystreamBuffer,
const byte *IV,
size_t length);