@datkt/crypto
v0.5.0
Published
Various cryptographic function for datkt
Downloads
20
Readme
crypto
Various cryptographic function for datk.
Installation
The datkt.crypto
package an be installed with NPM.
$ npm install @datkt/crypto
Prerequisites
- Kotlin/Native and the
konanc
command line program.
Usage
## Compile a program in 'main.kt' and link crypto.klib found in `node_modules/`
$ konanc -r node_modules/@datkt -l crypto/crypto main.kt
where main.kt
might be
import datkt.crypto.*
fun main(args: Array<String>) {
val kp = keyPair()
// @TODO
}
API
data class KeyPair(val publicKey: ByteArray, val secretKey: ByteArray)
A simple data class container for a public and secret key pair
keyPair(seed: ByteArray? = null): KeyPair
Generates a ed25519 key pair suitable for creating signatures.
val kp = keyPair("some random seed value".toUtf8())
or
val kp = keyPair()
sign(message: ByteArray, secretKey: ByteArray): ByteArray
Generates a signature for a given message and secret key.
val ( publicKey, secretKey ) = keyPair()
val message = "hello".toUtf8() // convert to ByteArray
val signature = sign(message, secretKey)
Tests
To run the tests, make sure the crypto.klib
Kotlin library is built by
running the following command.
$ npm run build
When the library is built, run the following command to run the tests.
$ npm test
See Also
- https://github.com/mafintosh/hypercore-crypto
License
MIT