C 语言实现简易区块链
总结:C 语言真不是我这种菜鸡所能驾驭的…
-
无奈哈希函数太麻烦,就采用 base64 替代下哈希函数吧,其他符合区块链理论
#include <stdio.h> #include <string.h> #include <time.h> #include <stdlib.h> // base64 编码 static const char *ALPHA_BASE = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; void Base64(const char *buf, const long size, char *base64Char) { int a = 0; int i = 0; while (i < size) { char b0 = buf[i++]; char b1 = (i < size) ? buf[i++] : 0; char b2 = (i < size) ? buf[i++] : 0; int int63 = 0x3F; int int255 = 0xFF; base64Char[a++] = ALPHA_BASE[(b0 >> 2) & int63]; base64Char[a++] = ALPHA_BASE[((b0 << 4) | ((b1 & int255) >>