关于 cita 不同加密算法和散列算法的疑问

  1. 不同版本之间合约是否通用,三种版本的链是否可以使用 solidity 编译后的同一份二进制文件?虚拟机中对函数签名是否使用的同一种算法?
  2. 目前三种版本的 SDK 开发完成情况如何?是否都有 JAVA 或 JS 版本可以使用?
  1. 不同算法的版本是不通用的,不能混用。solidity不受影响,合约中的函数签名是按照evm的规范实现的,不会随着不同算法版本变化。
  2. java和js的sdk里面都是同时支持三种算法的。生成账户和密钥时注意选择一下跟链对应的算法就可以了。
    比如对交易签名,sdk里面既有默认使用secp256k1的sign函数,也有可以自己传签名算法的sign函数

https://github.com/citahub/cita-sdk-java/blob/master/core/src/main/java/com/citahub/cita/protocol/core/methods/request/Transaction.java#L128