Added sha2 hashes in common and native and test
This commit is contained in:
1 parent
1878144b8f
commit
15be707114
7 files changed
+313
-4
No files matched your search
+18
-1
@@ -7,10 +7,18 @@ package com.ionspin.kotlin.crypto.generichash
|
||||
*/
|
||||
|
||||
val crypto_generichash_BYTES = 32
|
||||
val crypto_generichash_blake2b_BYTES_MIN = 16
|
||||
val crypto_generichash_blake2b_BYTES_MAX = 64
|
||||
val crypto_generichash_blake2b_BYTES = 32
|
||||
val crypto_generichash_blake2b_KEYBYTES_MIN = 16
|
||||
val crypto_generichash_blake2b_KEYBYTES_MAX = 64
|
||||
val crypto_generichash_blake2b_KEYBYTES = 32
|
||||
val crypto_generichash_blake2b_SALTBYTES = 16
|
||||
|
||||
expect class GenericHashStateInternal
|
||||
|
||||
data class GenericHashState(val hashLength: Int, val internalState: GenericHashStateInternal)
|
||||
|
||||
expect class GenericHashStateInternal
|
||||
|
||||
expect object GenericHash {
|
||||
|
||||
@@ -21,6 +29,15 @@ expect object GenericHash {
|
||||
fun genericHashFinal(state : GenericHashState) : UByteArray
|
||||
|
||||
fun genericHashKeygen() : UByteArray
|
||||
// ---- Not present in LazySodium nor libsodium.js
|
||||
// fun blake2b(message : UByteArray, requestedHashLength: Int, key : UByteArray? = null) : UByteArray
|
||||
//
|
||||
// fun blake2bInit(requestedHashLength: Int, key : UByteArray? = null) : Blake2bState
|
||||
// fun blake2bUpdate(state: GenericHashState, messagePart : UByteArray)
|
||||
// fun blake2bFinal(state : GenericHashState) : UByteArray
|
||||
//
|
||||
// fun blake2bKeygen() : UByteArray
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
package com.ionspin.kotlin.crypto.hash
|
||||
|
||||
/**
|
||||
* Created by Ugljesa Jovanovic
|
||||
* ugljesa.jovanovic@ionspin.com
|
||||
* on 31-Aug-2020
|
||||
*/
|
||||
|
||||
val crypto_hash_BYTES = 64
|
||||
val crypto_hash_sha256_BYTES = 32
|
||||
val crypto_hash_sha512_BYTES = 64
|
||||
|
||||
expect class Sha256State
|
||||
expect class Sha512State
|
||||
|
||||
expect object Hash {
|
||||
|
||||
fun hash(data: UByteArray) : UByteArray
|
||||
|
||||
fun sha256(data: UByteArray) : UByteArray
|
||||
fun sha256Init() : Sha256State
|
||||
fun sha256Update(state: Sha256State, data : UByteArray)
|
||||
fun sha256Final(state : Sha256State) : UByteArray
|
||||
|
||||
fun sha512(data: UByteArray) : UByteArray
|
||||
fun sha512Init() : Sha512State
|
||||
fun sha512Update(state: Sha512State, data : UByteArray)
|
||||
fun sha512Final(state : Sha512State) : UByteArray
|
||||
|
||||
|
||||
}
|
||||
Reference in new issue
Block a user