Git Product home page Git Product logo

sm9_free's People

Contributors

songgeng87 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

sm9_free's Issues

print_big和sm9_init中的epoint_set

输出big不正确,只能输出28字节。并且我的SM9_init也不能正确运行。epoint_set始终不对,是怎么回事呢,谢谢博主。

签名验签不正确

cks:="\x86\xDC\xD6\x4F\xEB\x81\xA7\x19\x63\x59\x59\xF1\xA5\xC2\xF9\x88\xBD\x39\x43\x1B\x08\xA8\x63\xF0\x42\x8D\x21\xDF\xFA\xF2\xBF\x89"
id:="\x41\x6C\x69\x63\x65"
msg := "\x43\x68\x69\x6E\x65\x73\x65\x20\x49\x42\x53\x20\x73\x74\x61\x6E\x64\x61\x72\x64"
rand:="\x1A\x23\x29\x77\xBA\x9F\xA2\xD1\xC5\x58\xF2\xD4\x67\xFE\x7B\xE7\x04\x05\x41\x26\x73\xF8\xBE\x64\x9B\xBD\xD4\xA0\x95\xBE\x1B\x4B"

---------------------------------------结果----xs显示不全-------------------------------------
h: 396fb96c805e65426b1120c27edf86ecc1e36f88e8fdd1f59cbfc573c20536b0
xs: 52a37a7ab0b9016147593d068370268dd6e011e8443fffc194
ys: 2eaaba9d337a3cbc8562e1e22794f69f950b82785fe2df7e512ec9588ae3cfa8

签名

生成签名:代码 SM9_Signature() 函数,签名通过结构体SM9_Sign存放,想问一下放在消息体后的签名,是将结构体赋值再消息体之后,直接发送至对端么。还是经过了进一步的运算

俩个问题哦

  1. 代码下Ubuntu下编译不成功呢 make test 编不出来 执行文件哦
  2. 请问可以在单片机下使用吗 如果有 测过哪个?

加解密问题

--------------------------加密测试参数--------------------------

unsigned char cmsg[20] = {"\x43\x68\x69\x6E\x65\x73\x65\x20\x49\x42\x45\x20\x73\x74\x61\x6E\x64\x61\x72\x64"};
unsigned char eks[32] = {"\x00\x01\xED\xEE\x37\x78\xF4\x41\xF8\xDE\xA3\xD9\xFA\x0A\xCC\x4E\x07\xEE\x36\xC9\x3F\x9A\x08\x61\x8A\xF4\xAD\x85\xCE\xDE\x1C\x22"};
unsigned char eid[3] = {"\x42\x6F\x62"};
unsigned char er[32] = {"\x00\x00\xAA\xC0\x54\x17\x79\xC8\xFC\x45\xE3\xE2\xCB\x25\xC1\x2B\x5D\x25\x76\xB2\x12\x9A\xE8\xBB\x5E\xE2\xCB\xE5\xEC\x9E\x78\x5C"};

注:这个加密结果前半部分 x+y都是一致的,后半部分是c3+cp吗 好像不太一样

--------------------------调用库得到的结果--------------------------
x: 2445471164490618e1ee20528ff1d545b0f14c8bcaa44544f03dab5dac07d8ff
y: 42ffca97d57cddc05ea405f2e586feb3a6930715532b8000759f13059ed59ac0
c3: fd3c98dd92c44c68332675a370cceede31e0c5cd209c257601149d12b394a2be
cp: e05b6fac6f11b965268c994f00dba7a8bb00fd60583546cbdf4649250863f10a

--------------------------测试工具得到的结果--------------------------
2445471164490618E1EE20528FF1D545B0F14C8BCAA44544F03DAB5DAC07D8FF42FFCA97D57CDDC05EA405F2E586FEB3A6930715532B8000759F13059ED59AC0DEA278E55F9ECB2ECD98E4BA8C8B8EF05571D2AFB3BD94BA8563E236125055A163451E20CD57DFB0722D6D0C8731573FBB00FD60583546CBDF4649250863F10A

怎么支持arm64

使用arm交叉编译时,内联的汇编指令报错,但是对汇编不了解,应该怎么解决呢

😜

签名验签问题

1、写死随机数,但每次执行签名结果不同
2、将msg改为非Chinese IBS standard,比如 abcd 等等,验签会失败

签名结果错误

cks:="\x1A\x94\x71\xE7\x2F\xA8\xAB\xE0\xCC\x6B\x9C\x1C\x71\x43\xCF\x77\xC6\xFD\xAF\x62\x7C\x4E\xF5\x5F\x11\x9A\xB6\x9F\xC2\x3D\x48\x97"
msg := "\x43\x68\x69\x6E\x65\x73\x65\x20\x49\x42\x53\x20\x73\x74\x61\x6E\x64\x61\x72\x64"
rand:="\x25\x20\xE4\xEC\x4A\x03\xBD\xED\x54\xEF\x07\x2D\x59\xC5\xFE\xBF\x20\x14\xBE\xDD\xAF\x43\x14\xAA\x94\x35\x9B\x7B\xE4\xE9\x55\xC9"

---------------------------------------结果----xs显示不全-------------------------------------
h: 1fcb9f5bac5e3cef88fa839504fcd7ab9fb89337e95fdfa659a370f728bbd66a
xs: 6cec7fa9abae
ys: 86a7f2b3236b9feda074fded1201ca33c13c2ebe057a99073b02e70ec6e05cb1

编译错误

Makefile
第2行: CC = gcc -std=c99
第27行: $(CC) SM9Test.o -o test -L./ -lsm9

怎么比官方的代码多了一些函数呢?

我发现了一些函数官方库里没有,比如zzn2_pow,zzn2_kill,是作者自己添加的么。我本来想用别人编译好的库,但是发现有些函数提示找不到,查了官方的代码发现也没有。

签名结果和验证工具不太一致

cks="2185EFAE4160ADB3ADF66661896A0093730FA84100A18AB252892B3C5151D7D4"
id="rtxm"
msg="mfds"
rand="641C11724B96E1CABE8230F9E4EFC309A7D2B8B0C18234E6D3249C3C9AB247A9"

代码测试结果:
h:
8ca9426325d020fd7bb92f3f4b17bc2ff941353d133699e2c8cdc9b8ece48eba
xs:
14d624aeb3f9774540a4e99767ae88791757c8087a15b0df271381203b1cadd7
ys:
4588e599a91466ffe22e21adbf7ad4168cb7ac4bd93c042771fbaf2aaf6c3897

###############################################################################
测试工具结果:
h:
8CA9426325D020FD7BB92F3F4B17BC2FF941353D133699E2C8CDC9B8ECE48EBA
xs:
9073D8A1588EB53D659DB032E26E688A7E3FD36A99D8F5C80AF020D2199755CA
ys:
47030BA93EFD34970C6F83AEEDBB201239D4473CC58B21DC1BBD71FAD07626F6

SM9_Init

SM9_Init函数始终返回1 ,建议初始化成功返回其他值

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.