charm:快速原型密码系统的框架
charm-crypto的Python项目详细描述
charm是一个快速构建高级密码系统原型的框架。基于Python语言,它是从底层设计的,以最小化开发时间和代码复杂度,同时促进组件的重用。
charm使用了一种混合设计:性能密集型的数学运算是在原生c模块中实现的,而密码系统本身是用可读的高级语言编写的。charm还提供了一些新组件,以促进新方案和协议的快速开发。
魅力的特点包括:
Support for various mathematical settings, including integer rings/fields, bilinear and non-bilinear Elliptic Curve groups Base crypto library, including symmetric encryption schemes, hash functions, PRNGs Standard APIs for constructions such as digital signature, encryption, commitments A “protocol engine” to simplify the process of implementing multi-party protocols An integrated compiler for interactive and non-interactive ZK proofs Integrated benchmarking capability
在安装之前,您需要gmp和pbc。参见文档:http://jhuisi.github.io/charm/install_source.html