【渗透工具】国密(SM)系列加解密工具2.0SM_Decrypt

免责申明

本公众号的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他!!!

简介

为了解决在测试过程中遇见传输过程中对数据包进行了加密,特别一些特殊行业,现在企业都在往国产化靠拢。若要对这些加密数据进行有效的测试,首要任务便是还原其加密方式,或者对响应包进行解密处理。

使用

国密SM系列加解密图形化GUI工具,支持sm2加密,sm2解密,sm3加密,sm4加密,sm4解密,sm4支持多种填充方式,输入输出支持hex与base64。不依赖网络,适合内网使用

2.0版本更新

  • 修复了SM2部分解密问题,现在加密结果附加了04标识。
  • 美化了用户界面。
  • 增加了操作日志模块,可以查看历史加解密记录。
  • 增加了JSON格式化功能,方便阅读。

工具截图
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

下载链接

公众号回复“20250227”

好的,以下是基于C# Winform的国密SM4加解密方法的示例代码: ``` using System.Security.Cryptography; // SM4加 public static byte[] SM4Encrypt(byte[] plainData, byte[] key) { // 创建SM4加对象 var sm4 = new SM4CryptoServiceProvider(); // 设置加模式和填充模式 sm4.Mode = CipherMode.ECB; sm4.Padding = PaddingMode.Zeros; // 设置sm4.Key = key; // 创建加器 var encryptor = sm4.CreateEncryptor(); // 加数据 return encryptor.TransformFinalBlock(plainData, 0, plainData.Length); } // SM4解 public static byte[] SM4Decrypt(byte[] cipherData, byte[] key) { // 创建SM4解对象 var sm4 = new SM4CryptoServiceProvider(); // 设置加模式和填充模式 sm4.Mode = CipherMode.ECB; sm4.Padding = PaddingMode.Zeros; // 设置sm4.Key = key; // 创建解器 var decryptor = sm4.CreateDecryptor(); // 解数据 return decryptor.TransformFinalBlock(cipherData, 0, cipherData.Length); } ``` 使用方法: ``` // 要加的数据 byte[] plainData = Encoding.UTF8.GetBytes("Hello, world!"); // 加钥 byte[] key = new byte[16] { 0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF, 0xFE, 0xDC, 0xBA, 0x98, 0x76, 0x54, 0x32, 0x10 }; // 加 byte[] cipherData = SM4Encrypt(plainData, key); // 解 byte[] decryptedData = SM4Decrypt(cipherData, key); // 输出解后的数据 Console.WriteLine(Encoding.UTF8.GetString(decryptedData)); ``` 请注意,以上示例代码仅供参考,您需要根据实际需求进行修改和调整。另外,由于SM4算法是国密算法,因此在实际开发中需要遵循相关法律法规的规定。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值