Written for fairly adept technical users, preferably of Debian GNU/Linux, not for absolute beginners.
|
You'll probably be working with a single smartcard, so you'll want only one primary key ( |
| from base58 import b58encode_check | |
| from hashlib import blake2b | |
| prefix = lambda x: b'\x36\xf0\x2c\x34' + x | |
| data = b'hello world' | |
| md32 = blake2b(data, digest_size=32).digest() | |
| md64 = blake2b(data, digest_size=64).digest() | |
| encoded_md32 = b58encode_check(prefix(md32)) | |
| encoded_md64 = b58encode_check(prefix(md64)) |
| // Example program | |
| #include <iostream> | |
| #include <string> | |
| #include <vector> | |
| #include <type_traits> | |
| //--------------------- | |
| // Maybe and MyVector, two totally unrelated classes whose only commanilty is that they are both type constructors of the same arity (e.g. 1) and order (e.g. 1). | |
| //--------------------- | |
| template< typename T > |
| ### Keybase proof | |
| I hereby claim: | |
| * I am amrali on github. | |
| * I am d4de (https://keybase.io/d4de) on keybase. | |
| * I have a public key ASCNhEboNTHV0lsmYqwanCCVMcWxzhzf82HMwuS2iZODIQo | |
| To claim this, I am signing this object: |
| crypto = require 'crypto' | |
| md5sum = crypto.createHash 'md5' | |
| pkey = 'Base64 encoded public key goes here' | |
| data = Buffer(key, 'base64').toString 'binary' | |
| md5sum.update data | |
| fingerprint = md5sum.digest 'hex' | |
| fingerprint = ("#{fingerprint[i]}#{fingerprint[i + 1]}" for i in [0...fingerprint.length] when i % 2 is 0).join ':' |