Methods use + unit tests update
This commit is contained in:
parent
09d519e51e
commit
b218f523af
15 changed files with 170 additions and 15 deletions
|
|
@ -7,6 +7,7 @@ import (
|
|||
"golang.org/x/crypto/scrypt"
|
||||
)
|
||||
|
||||
// Use: ios/android only
|
||||
// EncryptWithoutIntegrity encrypts data with AES-CTR. Note: this encryption mode is not secure when stored/sent on an untrusted medium.
|
||||
func EncryptWithoutIntegrity(key, input, iv []byte) (output []byte, err error) {
|
||||
var block cipher.Block
|
||||
|
|
@ -19,12 +20,14 @@ func EncryptWithoutIntegrity(key, input, iv []byte) (output []byte, err error) {
|
|||
return
|
||||
}
|
||||
|
||||
// Use: ios/android only
|
||||
// DecryptWithoutIntegrity decrypts data encrypted with AES-CTR.
|
||||
func DecryptWithoutIntegrity(key, input, iv []byte) ([]byte, error) {
|
||||
// AES-CTR decryption is identical to encryption.
|
||||
return EncryptWithoutIntegrity(key, input, iv)
|
||||
}
|
||||
|
||||
// Use: ios/android only
|
||||
// DeriveKey derives a key from a password using scrypt. N should be set to the highest power of 2 you can derive within 100 milliseconds.
|
||||
func DeriveKey(password string, salt []byte, N int) ([]byte, error) {
|
||||
return scrypt.Key([]byte(password), salt, N, 8, 1, 32)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue