crypto

Generated by tinox doc

Hashing (md5, sha1, sha256, hmacSha256), symmetric encryption (aesEncrypt/aesDecrypt), key derivation (pbkdf2), and secure random bytes/keys. Backs oauth2/oidc/jwt/tinox-central's own password- and signature-handling elsewhere in the stdlib.

ModuleVersionGroup
random1.0.0tinox.core

Hash and hmac

import tinox.core.crypto;

class Main
{
    fnc main() -> Int32
    {
        let hash: String = Crypto::sha256("hello, tinox!");
        println(hash);

        let signature: String = Crypto::hmacSha256("payload", "secret-key");
        println(signature);

        let key: String = Crypto::generateKey(32);
        println("random key length: " + key.len().toString());
        return 0;
    }
}

fn secureRandomBytesRaw(n: Int64) → List<Int64>

fn tinoxBytesToString(bytes: List<Int64>) → String

class Crypto

Methods

fn secureRandomBytes(n: Int64) → List<Int64>
fn md5(data: String) → String
fn sha256(data: String) → String
fn sha1(data: String) → String
fn hmacSha256(data: String, key: String) → String
fn aesEncrypt(data: String, key: String) → String
fn aesDecrypt(data: String, key: String) → String
fn generateKey(length: Int64) → String
fn pbkdf2(password: String, salt: String, iterations: Int64, keyLength: Int64) → String