1. 程式人生 > >Javascript和C#真正可以互動的DES加解密程式碼

Javascript和C#真正可以互動的DES加解密程式碼

因專案需要,要用js加密後,提交給C#解密,

在網上找了半天,網上有無數個版本,卻找不到一個能互相使用的

甚至就連都是js版本的,都不能互通,汗一個。

因為時間關係,沒有去深究加密程式碼,就隨便下載了一個JS版本的,

並把它改寫成C#版本的

這樣JS加密後的結果,C#也能解密

反之C#加密後的結果,JS也能解密

我把它發出來給大家共享吧

注:原始碼是VS.Net2008版本建立的,裡面包含js的加解密函式和C#的加解密函式

如果你找到什麼bug,或有啥好建議,不妨聯絡一下俺,呵呵:

btw:在改寫過程中,JS支援帶符號位右移(>>>操作符),而C#不支援,

非要把int轉換成uint,再右移(>>操作符)

而operator又不支援>>>

只好寫一個別的函數了。

相關推薦

JavascriptC#真正可以互動DES解密程式碼

因專案需要,要用js加密後,提交給C#解密,在網上找了半天,網上有無數個版本,卻找不到一個能互相使用的甚至就連都是js版本的,都不能互通,汗一個。因為時間關係,沒有去深究加密程式碼,就隨便下載了一個JS版本的,並把它改寫成C#版本的 這樣JS加密後的結果,C#也能解密反之C#

phpc#一致的DES加密解密演算法類

DES加解密演算法,在C#與PHP中的通用類。 注意: 1、類中的祕鑰key跟向量iv,均用的同樣的值 2、編碼均採用的utf-8 以下為具體程式碼,可以直接複製去進行實際測試 C#版程式碼: using System; using System.Data;

可通用的C#與Java的Des解密程式碼

最近專案中需要將Java的DES加密的內容,用C#解密。這裡僅做記錄。1、Java版import java.io.UnsupportedEncodingException; import java.security.SecureRandom; import javax.cr

php實現c#一致的DES加密解密 (php中呼叫方法)

php實現和c#一致的DES加密解密,可以從網上搜到一大堆,但是測試後發現都沒法用。以下正確程式碼是我經過苦苦才找到的。希望大家在系統整合時能用的上。<p>注意:key的長度為8位以內。</p> //C# 版DES 加解密演算法 using Syst

ios objective-c java php des解密統一

轉來的–>原文地址 用到裡面的iOS和java是OK的。 java: import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import javax.crypto.

C# DES解密

Key為八位字串 /// <summary> /// DES加密字串 /// </summary> /// <param name="pToEncrypt">待加密的字串</param> /// <param name="sKey"&

des解密JavaScript&Java)

前言:剛學h5沒多久,感覺吧比android難多了啊,特別是適配,真尼瑪苦逼啊,不過h5的大牛還是很多的,畢竟這麼多年了,隨便一搜就一大堆,正是因為這樣,今天剛好後臺需要用des對稱加密傳輸資料,然後就上網一搜,真尼瑪一大堆啊,最後找到了一個叫crypto-js

C#/JAVA/PHP 互通DES解密演算法(ECB模式支援8位)

import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.UnsupportedEncodingE

Des解密

轉字符串 pri rgs str 自己 rst public 初始化 工具 import java.security.*; import javax.crypto.Cipher; import javax.crypto.SecretKey; import java

PHP 基礎篇 - PHP 中 DES 解密詳解

tor 數據加密 解密 ans eat mark encrypted hex 基礎 一、簡介 DES 是對稱性加密裏面常見一種,全稱為 Data Encryption Standard,即數據加密標準,是一種使用密鑰加密的塊算法。密鑰長度是64位(bit),超過位數密鑰被忽

Java之DES解密解析

  說明:上篇RSA是一種非對稱的加解密演算法,今天這種是一種對稱的加解密演算法DESDES演算法的入口引數有三個:Key、Data、Mode。其中Key為7個位元組共56位,是DES演算法的工作金鑰;Data為8個位元組64位,是要被加密或被解密的資料;Mode為DES的工作方式,有兩種:加密或解密。Jav

DES 解密

一、DES加解密工具類 package com.hans.common.util; import java.io.*; import java.security.InvalidKeyException; import java.security.NoSuchAlgorit

C/C++ 實現檔案透明解密

                 今日遇見一個開超市的朋友,真沒想到在高校開超市一個月可以達到月淨利潤50K,相比起我們程式設計師的工資,真是不可同日而語,這個世道啊,真是做程式設計師不如經商開超市,我們高科技的從業者,真是造原子彈不如賣茶葉蛋。請見程式碼詳細註釋//  修復涉及後視列表的Win2K相容性//

[教程技巧] 簡析SwiftC互動

轉自貓·仁波切的部落格(微博)其中 @asmname 的兩個用法源於我的猜測驗證,用到了 Xcode, lldb, nm, llvm ir 等工具或格式。其中 name mangling 部分源自 WWDC。相關的分析主要基於我 dump 出的 Swift 標準庫宣告程

C語言AES解密程式碼實現

#include<stdio.h> #include<string.h> #include<string> #include<iostream> #include<unistd.h> #include<algorithm> us

JNI介面實現JavaC互動

        當面對帶有原生代碼的 Java 的應用程式時,程式設計師問的最通常的問之一,是在 Java 程式語言中的資料型別怎樣對映到本地程式語言C和C++中的資料型別。實際上,大多數程式將需要傳遞引數給本地方法,和也從本地方法接受結果。 1、基本型別的對映      

公鑰私鑰的含義,以及java客戶端伺服器之間進行安全解密的簡單實現

所謂公鑰和私鑰,一般是指在一個伺服器中,每個伺服器各自有自己的公鑰和私鑰,私鑰絕對保密,不可洩露,而公鑰會提供給可以被訪問的伺服器知曉。 如果serverA和serverB進行資料互動 那麼ServerA會知道B的公鑰 在傳送資料時 資料內容使用B的公鑰加密,傳送給B 數字

關於JAVA中RSA簽解籤,私鑰加密公鑰解密公鑰加密私鑰解密程式碼詳解

在專案中遇到的問題百度了許久總結出來的 私鑰加密公鑰解密和公鑰加密私鑰解密。 一般為了安全採用的是私鑰加密,公鑰解密(公鑰可以用Base64轉換後公開) package com.paic.ebank.creditcard.common.util; import java.s

Java 10進位制byte陣列與16進位制byte陣列互轉 及 在DES解密中的使用

一、10進位制byte陣列與16進位制byte陣列互轉 1. 10進位制byte陣列轉成16進位制byte陣列 Java中10進位制byte用二進位制表示佔用8位,16進位制的每個字元需要用4位二進位制位來表示,則將每一個10進位制 位元組的高4位、低4位分別進行處理,對應

Linux下lua安裝以及c互動

lua安裝,與c互動的過程記錄 lua安裝 在此我的機器環境是cenos 6.8 我安裝的是lua5.1.4版本 安裝lua編譯的相關依賴 yum -y install readline