<%
rem ##############################################
rem 加密解密
rem ##############################################

rem 在ASP中实现加密与解密,加密方法:根据RSA
rem 联系:hnsoso@sina.com
Class clsRSA

Public PrivateKey
Public PublicKey
Public Modulus

Public Function Crypt(pLngMessage, pLngKey)
On Error Resume Next
Dim lLngMod
Dim lLngResult
Dim lLngIndex
If pLngKey Mod 2 = 0 Then
lLngResult = 1
For lLngIndex = 1 To pLngKey / 2
lLngMod = (pLngMessage ^ 2) Mod Modulus
' Mod may error on key generation
lLngResult = (lLngMod * lLngResult) Mod Modulus
If Err Then Exit Function
Next
Else
lLngResult = pLngMessage
For lLngIndex = 1 To pLngKey / 2
lLngMod = (pLngMessage ^ 2) Mod Modulus
On Error Resume Next
' Mod may error on key generation
lLngResult = (lLngMod * lLngResult) Mod Modulus
If Err Then Exit Function
Next
End If
Crypt = lLngResult
End Function

Public Function Encode(ByVal pStrMessage)
Dim lLngIndex
Dim lLngMaxIndex
Dim lBytAscii
Dim lLngEncrypted
lLngMaxIndex = Len(pStrMessage)
If lLngMaxIndex = 0 Then Exit Function
For lLngIndex = 1 To lLngMaxIndex
lBytAscii = Asc(Mid(pStrMessage, lLngIndex, 1))
lLngEncrypted = Crypt(lBytAscii, PublicKey)
Encode = Encode & NumberToHex(lLngEncrypted, 4)
Next
End Function

Public Function Decode(ByVal pStrMessage)
Dim lBytAscii
Dim lLngIndex
Dim lLngMaxIndex
Dim lLngEncryptedData
Decode = ""
lLngMaxIndex = Len(pStrMessage)
For lLngIndex = 1 To lLngMaxIndex Step 4
lLngEncryptedData = HexToNumber(Mid(pStrMessage, lLngIndex, 4))
lBytAscii = Crypt(lLngEncryptedData, PrivateKey)
Decode = Decode & Chr(lBytAscii)
Next
End Function

Private Function NumberToHex(ByRef pLngNumber, ByRef pLngLength)
NumberToHex = Right(String(pLngLength, "0") & Hex(pLngNumber), pLngLength)
End Function

Private Function HexToNumber(ByRef pStrHex)
HexToNumber = CLng("&h" & pStrHex)
End Function

End Class
%>

<%
rem 加密调用

function Encryptstr(Message)
Dim LngKeyE
Dim LngKeyD
Dim LngKeyN
Dim StrMessage
Dim ObjRSA

LngKeyE = "32823"
LngKeyD = "20643"
LngKeyN = "29893"
StrMessage = Message

Set ObjRSA = New clsRSA

ObjRSA.PublicKey = LngKeyE
ObjRSA.Modulus = LngKeyN
Encryptstr = ObjRSA.Encode(StrMessage)
Set ObjRSA = Nothing
end function

rem 解密调用

function decryptstr(Message)
Dim LngKeyE
Dim LngKeyD
Dim LngKeyN
Dim StrMessage
Dim ObjRSA

LngKeyE = "32823"
LngKeyD = "20643"
LngKeyN = "29893"
StrMessage = Message

Set ObjRSA = New clsRSA

ObjRSA.PrivateKey =LngKeyD
ObjRSA.Modulus=LngKeyN
decryptstr=ObjRSA.Decode(StrMessage)
Set ObjRSA = Nothing
end function

'dim last,first
'first="sohu"
'Response.Write "加密前为:"&first
'last=Encryptstr(first)
'Response.Write "加密后为"&last
'Response.Write "解密后为" &decryptstr(last)

%>

asp 加密 解密 类相关推荐

  1. C# DES加密/解密类

    /// <summary>  /// DES加密/解密类.     /// LiTianPing  /// </summary>  public class DESEncryp ...

  2. DES加密/解密类。

    /// <summary> /// DES加密/解密类. /// </summary> public class DESEncrypt { #region ========加密 ...

  3. Java实现MD5加密解密类

    Java实现MD5加密以及解密类,附带测试类,具体见代码. MD5加密解密类--MyMD5Util,代码如下: [java] view plaincopy package com.zyg.securi ...

  4. C# 对称算法,加密解密类

    C# 对称算法,加密解密类 调用有先获取类实例,提供了解密和加密函数. using System.IO;  using System;  using System.Text.RegularExpres ...

  5. PHP针对数字的加密解密类,可直接使用

    <?php namespace app; /**  * 加密解密类  * 该算法仅支持加密数字.比较适用于数据库中id字段的加密解密,以及根据数字显示url的加密.  * @author 深秋的 ...

  6. java文本文件加密解密类

    原文:http://www.open-open.com/code/view/1420031154765 import java.awt.*; import java.awt.event.*; impo ...

  7. asp+html加密最终版,ASP后门之终极伪装+在线琳法ASP加密解密网站安全 -电脑资料...

    里面的原理是将换行/回车符替换成"琳"字,至于那个"输入一个-95~+95之间的数"是为了找一个手动的随机数,在解 密的过程也可以用到, 先试用了一下: 我在C ...

  8. aesmiyao php_php写的AES加密解密类分享

    /** * php AES加解密类 * 如果要与java共用,则密钥长度应该为16位长度 * 因为java只支持128位加密,所以php也用128位加密,可以与java互转. * 同时AES的标准也是 ...

  9. csharp base64加密java解密_C#自定义基于Base64的加密解密类

    下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. using System; using System.Security.Cryptogra ...

  10. PHP DES加密解密类

    今天写App接口的时候需要传递加密数据给APP端,于是就写了下面的DES加密类,亲测正确代码如下 class CryptDes {function __construct(){$this->ke ...

最新文章

  1. 使用U-Nets和深度学习进行自动缺陷检查
  2. java 网络实验_Java实验五网络编程与安全
  3. 2018.12.05 codeforces 948C. Producing Snow(堆)
  4. STS Eclipse IDEA 指定启动JDK版本
  5. 论文笔记:Missing Value Imputation for Multi-view UrbanStatistical Data via Spatial Correlation Learning
  6. MySQL—视图(一)
  7. js全选 复选框的问题
  8. Linux系统管理(六)
  9. 9.关于Unicode字符集
  10. scala基础之提取器extractor
  11. 国庆档票房近50亿创纪录 背后影视股却遭遇集体下跌
  12. proe虚拟服务器,ProE安装以及虚拟网卡的配置
  13. ROS入门-7.创建工作空间与功能包
  14. MyBatis Demo 编写(2)结果映射转换处理
  15. ubuntu安装deb,rpm安装包方法
  16. spring系统学习:day4--Spring工厂
  17. 视频转换器如何将腾讯QLV格式转换成MP4视频文件
  18. win7计算机共享用户名和密码,Win7共享提示用户名密码错误怎么办
  19. .caj文件转换为.pdf文件
  20. Ueditor详细配置说明文档

热门文章

  1. VirtualDub使用教程详解
  2. 用代码实现windows10下的虚拟桌面创建功能
  3. 计算机内如何关闭wps云盘,WPS轻松去掉WPS网盘,你可以吗?
  4. fmask云检测 matlab_高分四号卫星数据云和云阴影检测算法
  5. 华为云安装:宝塔linux+wordpress建站
  6. mysql 80070057_0x80070057错误原因
  7. 【Unity2D好项目分享】提高游戏人物打击感
  8. 围棋规则的计算机实现
  9. 数据压缩作业——浊音,清音,爆破音时频分析
  10. Planner – 项目管理软件 - 小众软件