JAVA加密:

package webdomain;

import java.security.Key;
import java.security.spec.AlgorithmParameterSpec; import javax.crypto.Cipher;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.DESKeySpec;
import javax.crypto.spec.IvParameterSpec; import Decoder.BASE64Encoder; public class CrytoTools {
private static final byte[] DESkey = "此处8位密钥--A".getBytes(); //
private static final byte[] DESIV = "此处另外8位密钥--B".getBytes(); // static AlgorithmParameterSpec iv = null;
private static Key key = null; public CrytoTools() throws Exception {
DESKeySpec keySpec = new DESKeySpec(DESkey);
iv = new IvParameterSpec(DESIV);
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
key = keyFactory.generateSecret(keySpec);
} public String encode(String data) throws Exception{
Cipher enCipher = Cipher.getInstance("DES/CBC/PKCS5Padding");
enCipher.init(Cipher.ENCRYPT_MODE , key,iv);
byte[] pasByte = enCipher.doFinal(data.getBytes("utf-8"));
BASE64Encoder base64Encoder = new BASE64Encoder();
return base64Encoder.encode(pasByte);
}
}

C#解密

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Web;
using System.Text; using System.Configuration;
using System.Security.Cryptography;
using System.IO; namespace AppService
{
public class DES
{
// DES復号化
public static string DESDeCode(string encryptedString, string sKey)
{
try
{
byte[] btKey = Encoding.Default.GetBytes("此处8位密钥--A"); // キー
byte[] btIV = Encoding.Default.GetBytes("此处另8位密钥--B"); // キー
DESCryptoServiceProvider des = new DESCryptoServiceProvider(); using (MemoryStream ms = new MemoryStream())
{
byte[] inData = Convert.FromBase64String(encryptedString);
try
{
using (CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(btKey, btIV), CryptoStreamMode.Write))
{
cs.Write(inData, , inData.Length);
cs.FlushFinalBlock();
}
return Encoding.UTF8.GetString(ms.ToArray());
}
catch
{
return encryptedString;
} }
}
catch {
return encryptedString;
}
}
}
}

【加解密】关于DES加密算法的JAVA加密代码及C#解密代码的更多相关文章

  1. des加密算法java&c#

    项目中用到的数据加密方式是ECB模式的DES加密得到的十六进制字符串.技术支持让写一个.net版的加密算法.这里做一下记录. java版: 16进制使用的是bouncycastle. import c ...

  2. 浅谈DES加密算法

    一.DES加密算法介绍 1.要求密钥必须是8个字节,即64bit长度 2.因为密钥是byte[8] , 代表字符串也可以是非可见的字节,可以与Base64编码算法一起使用 3.加密.解密都需要通过字节 ...

  3. Java加密技术(八)——数字证书

    原文:http://snowolf.iteye.com/blog/391931 请大家在阅读本篇内容时先阅读 Java加密技术(四),预先了解RSA加密算法. 在构建Java代码实现前,我们需要完成证 ...

  4. Java加密技术

    相关链接: Java加密技术(一)——BASE64与单向加密算法MD5&SHA&MAC Java加密技术(二)——对称加密DES&AES Java加密技术(三)——PBE算法  ...

  5. JAVA使用DES加密算法加密解密

    程序中使用了.properties文件作为参数配置文档,好处是灵活配置各项参数 一旦对数据库的一些参数进行了配置,势必涉及数据库的IP,端口,用户名和密码 properties文件全是unicode编 ...

  6. Java 加密解密 对称加密算法 非对称加密算法 MD5 BASE64 AES RSA

    版权声明:本文为博主原创文章,未经博主允许不得转载. [前言] 本文简单的介绍了加密技术相关概念,最后总结了java中现有的加密技术以及使用方法和例子 [最简单的加密] 1.简单的概念 明文:加密前的 ...

  7. 【知识积累】DES算法之C#加密&Java解密

    一.前言 在项目需要添加安全模块,客户端调用服务端发布的service必须要经过验证,加密算法采用DES,客户端采用C#进行加密,服务端使用Java进行解密.废话不多说,直接上代码. 二.客户端 客户 ...

  8. JAVA加解密之DES

    DES加密算法是一种分组密码,以64位为分组对数据加密,它的密钥长度是56位,加密解密用同一算法.DES加密算法是对密钥进行保密,而公开算法,包括加密和解密算法.这样,只有掌握了和发送方相同密钥的人才 ...

  9. ◆JAVA加密解密-DES

    DES算法提供CBC, OFB, CFB, ECB四种模式,MAC是基于ECB实现的. 一.数据补位 DES数据加解密就是将数据按照8个字节一段进行DES加密或解密得到一段8个字节的密文或者明文,最后 ...

随机推荐

  1. Android之开发杂记(二)

    1.android 4.0 以后 高版本没有虚拟菜单键

  2. Android中的sp与wp

    一.相关code文件 二.code具体分析 lightrefebase: refbase: sp: wp: flag: 三.使用注意事项 不能在把目标对象赋给一个长久存在的sp对象之前赋给一个短生命周 ...

  3. DbProviderFactories.GetFactoryClasses

    using System.Data.Common; private void Method1() { DataTable table = DbProviderFactories.GetFactoryC ...

  4. hibernate基础(1)

    hibernate基础1.hibernate介绍与动手入门体验  问题:模型不匹配(java对象模型与数据库关系模型不匹配)  解决: 1.使用JDBC手工转换        2.使用ORM(Obje ...

  5. ORA-12154 终极解决办法

    PLSQL连接Oracle数据库总出现12514分2中情况: 1.无法解析指定的连接标识符: 解决办法:我的电脑---属性---高级---环境变量   删除Path变量中C:\oracle\produ ...

  6. WCF常见异常-The maximum string content length quota (8192) has been exceeded while reading XML data

    异常信息:The maximum string content length quota (8192) has been exceeded while reading XML data 问题:调用第三 ...

  7. simplefactory简单工厂模式

    简单工厂模式概述    又叫静态工厂方法模式,它定义一个具体的工厂类负责一些类的实例 优点    客户端不需要在负责对象的创建,从而明确了各个类的职责 缺点:    这个静态工厂类负责所有对象的创建, ...

  8. github.io hexo 安装

    /***************************************************************** * github.io hexo 安装 * 说明: * 本文记录h ...

  9. Android AIDL自动生成Java文件测试

    /******************************************************************************** * Android AIDL自动生成 ...

  10. greensock的tween源码阅读笔记

    对于一个处于gc状态的tween,如果这个gc状态是由kill触发的,那么直接从masterList删除否则的话,被tweenlite的垃圾回收删除! 对于一个不是立即启动的tween,它被添加到ti ...