当前位置: 首页 > news >正文

建设实业公司网站设计模板网站建设实训报告心得体会

建设实业公司网站设计模板,网站建设实训报告心得体会,做服务器的网站的模板,做网站用php还是html好GMT0130-2023具体描述基于SM2算法的隐式证书公钥机制,这里尝试Python代码实现密钥生成部分功能,具体如下,椭圆曲线计算实现使用python第三方包gmssl。 #生成用户私钥Da和公钥Pa,其中Da(tAdA)mod N,Pa可以直…

GMT0130-2023具体描述基于SM2算法的隐式证书公钥机制,这里尝试Python代码实现密钥生成部分功能,具体如下,椭圆曲线计算实现使用python第三方包gmssl。

#生成用户私钥Da和公钥Pa,其中Da=(tA+d'A)mod N,Pa可以直接用Da计算出来,当然也可以使用标准中的公式Pa=WA+[lambda]Ppub得到。

def on_click_gen_da_pa():global asymmetric_sm2_imp_user_da_text, default_sm2_tabletry:ta_h = gen_ta()d_a = bytes.fromhex(asymmetric_sm2_imp_user_da_text.get(1.0, END).strip().replace("\n", ""))d_a_h = d_a.hex()da = (int(ta_h, base=16) + int(d_a_h, base=16)) % int(default_sm2_table['n'], base=16)da_h = f'{da:32x}'write_log_to_Text("INFO:Da " + da_h, 2)pa_h = gen_p(da_h)write_log_to_Text("INFO:Pa " + pa_h, 2)except Exception as e:write_log_to_Text("ERROR:generate User keys failed:" + str(e), 2)

#计算tA=(w+lambda*ms)mod N

def gen_ta():global asymmetric_sm2_imp_kgc_w_text, asymmetric_sm2_imp_kgc_ms_text,default_sm2_tablew = bytes.fromhex(asymmetric_sm2_imp_kgc_w_text.get(1.0, END).strip().replace("\n", ""))w_h = w.hex()lambda_ = gen_lamda()ms = bytes.fromhex(asymmetric_sm2_imp_kgc_ms_text.get(1.0, END).strip().replace("\n", ""))ms_h = ms.hex()ta = (int(w_h, base=16) + int(lambda_, base=16)*int(ms_h, base=16)) % int(default_sm2_table['n'], base=16)ta_h = f'{ta:32x}'write_log_to_Text("INFO:Ta " + ta_h, 2)return ta_h

#计算lambda=Hash_SM3(x_WA||y_WA||Ha) mod N

def gen_lamda():global default_sm2_tableHA = gen_ha()(WA_x, Wa_y) = gen_wa()lambda_before_hash = WA_x + Wa_y + HAlambda_before_hash_bytes = bytes.fromhex(lambda_before_hash)lambda_i_d = [ch for ch in lambda_before_hash_bytes]lambda___ = gmssl.sm3.sm3_hash(lambda_i_d)lambda__ = int(lambda___, base=16) % int(default_sm2_table['n'], base=16)lambda_h = f'{lambda__:64x}'write_log_to_Text("INFO:lambda " + lambda_h, 2)return lambda_h

#计算WA=[w]G+Ua

def gen_wa():global asymmetric_sm2_imp_user_ua_x_var, asymmetric_sm2_imp_user_ua_y_var, asymmetric_sm2_imp_kgc_w_textw = bytes.fromhex(asymmetric_sm2_imp_kgc_w_text.get(1.0, END).strip().replace("\n", ""))w_h = w.hex()wa_p_h = gen_p(w_h, 2)ua_h = asymmetric_sm2_imp_user_ua_x_var.get() + asymmetric_sm2_imp_user_ua_y_var.get()tSm2 = sm2.CryptSM2('','')WA = tSm2._convert_jacb_to_nor(tSm2._add_point(wa_p_h, ua_h))WA_x = WA[0:64]WA_y = WA[64:]write_log_to_Text("INFO:WA_x " + WA_x, 2)write_log_to_Text("INFO:WA_y " + WA_y, 2)return WA_x, WA_y

#计算Ha=Hash_SM3(ENTLa||IDa||a||b||x_G||y_G||x_pub||y_pub)

def gen_ha():global asymmetric_sm2_imp_user_id_var, default_sm2_table, asymmetric_sm2_imp_kgc_pub_x_var, asymmetric_sm2_imp_kgc_pub_y_varida = asymmetric_sm2_imp_user_id_var.get().encode('GBK')ida_h = ida.hex()pubx = asymmetric_sm2_imp_kgc_pub_x_var.get()puby = asymmetric_sm2_imp_kgc_pub_y_var.get()entla = len(ida)*8entla_h = f'{entla:04x}'HA_before_hash = entla_h + str(ida_h) + default_sm2_table['a'] + default_sm2_table['b'] + default_sm2_table['g'] + pubx + pubyHA_before_hash_bytes = bytes.fromhex(HA_before_hash)ha_i_d = [ch for ch in HA_before_hash_bytes]ha_h = gmssl.sm3.sm3_hash(ha_i_d)write_log_to_Text("INFO:HA " + ha_h, 2)return ha_h

实现结果:

http://www.yayakq.cn/news/673478/

相关文章:

  • 网站租用服务器价格全国文明城市创建工作
  • 网站做成软件免费郑州北环附近网站建设
  • 旅游网页设计模板网站专业做企业活动的趴网站
  • 知乎网站建设用的工具网站添加外链
  • 展示产品的网站临沂网站制作培训
  • 家用电脑进行网站建设桂林象鼻山地址
  • 网站开发需求书模板南宁网站制作设计
  • 涞源县住房和城乡建设局网站网络营销与市场营销的区别
  • 做设计兼职网站苏州规划建设局网站
  • 国内做网站费用鲜花网站建设的总体目标
  • 可以免费建网站的用户注册页面html代码
  • wordpress 登录接口张家界百度seo
  • 怎么看别人的网站有没有做301富通建设工程有限公司网站
  • 网站推广软件排名网站建设项目组织图
  • 网站开发的未来展望网站标题应该怎么做SEO优化
  • 打开网站后直接做跳转页面吗网络推广搜索引擎
  • 物联网对企业网站建设的要求杭州cms模板建站
  • 电销做网站项目wordpress即阅文教程
  • 做移动网站优化首泰州自助建站软件
  • 山西太原制作网站人有吗软件培训公司排名
  • 网站开发留学在线制作ppt免费
  • 用易语言做网站抢购软件内容企业推广
  • 网站建设一站通.网站模板一站平台天猫网站设计特点
  • 旅游酒店网站建设做区域分析的地图网站
  • 培训制作网站58同城网站建设深圳丽丽亚
  • 做网站用什么软件方便深圳网站免费制作
  • 如何做自动交易网站做网站送的企业邮箱能用吗
  • 甘肃网站制作公司有哪些常见的微信营销方式有哪些
  • 一个网站建设哪家快山楼小院在哪家网站做宣传
  • 门户网站 开发注意阅读网站模板