`
liuyanhui
  • 浏览: 37640 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
最近访客 更多访客>>
社区版块
存档分类
最新评论

asp.net 加密及解密 url

    博客分类:
  • .NET
阅读更多
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Security.Cryptography;
using System.IO;
using System.Text;

/// <summary>
/// UrlEnDc 的摘要说明
/// ASP.NET C# URL加密解密
/// </summary>
public class UrlEnDc
{
    public UrlEnDc()
    {
        //
        // TODO: 在此处添加构造函数逻辑
        //
    }
    /// <summary>
    /// 加密
    /// </summary>
    /// <param name="str"></param>
    /// <param name="key">必须是8位的字符串</param>
    /// <returns></returns>
    public static string Encode(string str, string key)
    {
        DESCryptoServiceProvider provider = new DESCryptoServiceProvider();
        provider.Key = Encoding.ASCII.GetBytes(key.Substring(0, 8));
        provider.IV = Encoding.ASCII.GetBytes(key.Substring(0, 8));
        byte[] bytes = Encoding.GetEncoding("GB2312").GetBytes(str);
        MemoryStream stream = new MemoryStream();
        CryptoStream stream2 = new CryptoStream(stream, provider.CreateEncryptor(), CryptoStreamMode.Write);
        stream2.Write(bytes, 0, bytes.Length);
        stream2.FlushFinalBlock();
        StringBuilder builder = new StringBuilder();
        foreach (byte num in stream.ToArray())
        {
            builder.AppendFormat("{0:X2}", num);
        }
        stream.Close();
        return builder.ToString();
    }

    /// <summary>
    /// Des 解密 GB2312 
    /// </summary>
    /// <param name="str">Desc string</param>
    /// <param name="key">Key ,必须为8位 </param>
    /// <returns></returns>
    public static string Decode(string str, string key)
    {
        DESCryptoServiceProvider provider = new DESCryptoServiceProvider();
        provider.Key = Encoding.ASCII.GetBytes(key.Substring(0, 8));
        provider.IV = Encoding.ASCII.GetBytes(key.Substring(0, 8));
        byte[] buffer = new byte[str.Length / 2];
        for (int i = 0; i < (str.Length / 2); i++)
        {
            int num2 = Convert.ToInt32(str.Substring(i * 2, 2), 0x10);
            buffer[i] = (byte)num2;
        }
        MemoryStream stream = new MemoryStream();
        CryptoStream stream2 = new CryptoStream(stream, provider.CreateDecryptor(), CryptoStreamMode.Write);
        stream2.Write(buffer, 0, buffer.Length);
        stream2.FlushFinalBlock();
        stream.Close();
        return Encoding.GetEncoding("GB2312").GetString(stream.ToArray());
    }

}
分享到:
评论

相关推荐

    ASP.NET url参数传递加密及解密方法

    ASP.NET URL参数传递加密及解密是Web应用程序中常见的安全措施,主要目的是保护用户数据的隐私,防止中间人攻击和数据篡改。在ASP.NET框架中,我们可以利用内置的加密解密工具来实现这一功能。以下是一些关于如何在...

    网站url加密解密asp.net

    网站url加密解密asp.net .net url加密网站url加密解密asp.net .net url加密网站url加密解密asp.net .net url加密网站url加密解密asp.net .net url加密网站url加密解密asp.net .net url加密

    asp.net web URL 伪装或加密

    例如,可以使用`MachineKey.Protect()`和`MachineKey.Unprotect()`方法来加密和解密URL参数。需要注意的是,为了保证同一台服务器上的不同应用能正确解密,必须配置一致的机器密钥(MachineKey)。 在实践过程中,...

    asp.net 加密类

    在ASP.NET中,加密是确保数据安全的关键技术,它用于保护敏感信息,如用户密码、个人信息等,防止未经授权的访问。本文将深入探讨ASP.NET中的加密类以及如何利用它们进行地址参数加密。 1. **加密基础** - **加密...

    asp.net加解密和取拼音

    在这个主题中,“asp.net加解密和取拼音”涉及了两个重要的技术方面:数据加密和解密,以及汉字到拼音的转换。 **一、加解密** 在 ASP.NET 中,数据的安全性至关重要,尤其是在传输敏感信息时。加解密是保护这些...

    【ASP.NET编程知识】基于.net4.0实现IdentityServer4客户端JWT解密.docx

    ASP.NET 编程知识基于 .NET 4.0 实现 IdentityServer4 客户端 JWT 解密 本文档主要讲述了如何基于 .NET 4.0 实现 IdentityServer4 客户端 JWT 解密。IdentityServer4 是一个开源的身份验证服务器框架,它提供了基于...

    ASP.NET.C英文原著经典

    8. **安全与身份验证**:介绍ASP.NET的安全特性,如身份验证、授权和加密解密,以及如何保护Web应用不受攻击。 9. **部署与性能优化**:讲解如何将ASP.NET应用部署到IIS服务器,以及性能监控和优化策略。 10. **...

    ASP.NET部分笔记

    - ASP.NET提供了身份验证(Forms Authentication)、授权(Role-Based Authorization)和加密解密服务,保障应用安全。 10. **ASP.NET Core** - ASP.NET Core是ASP.NET的新一代版本,跨平台且性能更高,集成了MVC...

    ASP源码—网址在线加密解密,网址加密解密方法及工具.zip

    ASP.NET中的URL重写机制(如URLRoutingModule)可以用来改变URL的外观,同时也提供了在URL中隐藏实际参数的机会,这在某种程度上可以视为一种加密方式,因为它可以防止用户直接修改URL以访问非授权页面。...

    asp.net入门经典

    理解ASP.NET的安全性机制,如身份验证、授权、加密解密,以及防止SQL注入和XSS攻击的方法,是保障应用程序安全的关键。 总结,ASP.NET入门经典涵盖了从基本概念、开发环境设置到实际应用开发的全过程,是初学者系统...

    asp.net通用类

    7. **URL重写类**:ASP.NET通用类中的URL重写模块可以改善网站的SEO友好性,将不友好的URL转换为更易于理解和分享的形式。这通常涉及到正则表达式和HTTP模块的使用。 8. **线程和异步操作类**:在多用户环境中,...

    浅析基于asp.net的网站安全漏洞及防范

    ### 浅析基于ASP.NET的网站安全漏洞及防范 #### 摘要 本文结合自行开发的远程教育训练系统过程中出现的安全测试问题,探讨了在ASP.NET开发环境下常见的几种安全漏洞,包括SQL注入式攻击、查询字符串式数据传递、绕...

    基于ASP.NET实现的QueryString进行安全加密处理类库函数

    为了保障用户数据的安全和应用的稳定性,基于C#和ASP.NET开发的QueryString加密处理类库函数是至关重要的。这类函数的主要目标是对QueryString中的参数进行加密,以防止中间人攻击、数据篡改等安全问题。 首先,...

    ASP.NET 4.0专家技术手册

    7. **安全特性**:包括身份验证、授权、加密和解密等,ASP.NET 4.0提供了一整套安全机制,以保护应用程序免受攻击。 8. **AJAX支持**:ASP.NET 4.0加强了AJAX功能,如UpdatePanel的改进,增强了异步更新的能力,...

    ASP.NET4.0从入门到精通课件(18章)

    探讨ASP.NET的安全特性,如身份验证、授权、加密解密和防止XSS和CSRF攻击。 第15章:Web服务与WCF 了解如何创建和消费Web服务,以及使用Windows Communication Foundation (WCF)来构建面向服务的应用程序。 第16章...

    .net地址栏传值加密例子

    在VS2008中,你可以创建一个新的ASP.NET Web应用程序项目,然后在某个页面的代码中实现上述加密和解密逻辑。在Page_Load事件中,从URL的查询字符串中获取加密的值,然后进行解密。同时,当用户提交表单时,先加密...

    ASP.NET支付宝接口(可以直接用)

    开发者需要在支付宝开放平台注册并获取AppID、商户私钥以及支付宝公钥,这些用于加密和解密通信数据,确保交易安全。 3. **HTTP请求与响应**:在ASP.NET中,使用HttpClient类或者WebClient类可以发送HTTP请求到...

    ASP.NET英文帮助大全

    8. **安全性**:ASP.NET提供了身份验证、授权、加密和解密等功能,确保应用程序的安全性。 9. **部署**:发布ASP.NET应用涉及编译、配置和发布到Web服务器的过程,了解IIS设置和发布选项对于顺利部署至关重要。 10...

    ASP.NET开发实战宝典源代码(1~13章)

    - 加密和解密,如使用ASP.NET的机器密钥 - 防止跨站脚本攻击(XSS)和跨站请求伪造(CSRF) 8. **第八章:状态管理** - Application状态、Session状态、Cookie和Viewstate的使用场景 - TempData和QueryString的...

Global site tag (gtag.js) - Google Analytics