AES/DES c¼Ó½âÃÜÊÕ²Ø
#1Â¥ µÃ·Ö£º0»Ø¸´ÓÚ£º2009-12-26 15:37:26
¼ÓÃÜÓкܶàÖÖ·½·¨.ͬʱC#Ò²ÌṩÁ˺ܶà¼ÓÃÜ·½·¨.ÄãÐèÒª¼ÓÃܺͽâÃÜÔÚ¼ÓÃÜËã·¨ÉÏÐèҪʹÓöԳƼÓÃÜ.ÎÒ¸øÄãÌṩһ¸ö¼òµ¥µÄËã·¨.ÔÚ±£´æµÄʱºò¿ÉÒÔʹÓöþ½øÖƵķ½Ê½À´±£´æµ½Îļþ.
C# code
using System;
using System.IO;
using System.Text;
using System.Security.Cryptography;
namespace Tools
{
/// <summary>
/// ¼ÓÃÜ
/// </summary>
public class AES
{
//ĬÈÏÃÜÔ¿ÏòÁ¿
private static byte[] Keys = { 0x18, 0x72, 0x65, 0x79, 0x6F, 0x57, 0x6D, 0x79, 0x35, 0x6E, 0x6F, 0x77, 0x6D, 0x61, 0x6E, 0x3F };
/// <summary>
/// ÉèÖüÓÃÜÃܳ×ÏòÁ¿
/// </summary>
public static byte[] IV
{
set { Keys = value; }
get { return Keys; }
}
/// <summary>
/// AES¼ÓÃÜÊý¾Ý
/// </summary>
/// <param name="encryptString">ÐèÒª¼ÓÃܵÄÊý¾Ý</param>
/// <param name="encryptKey">¼ÓÃÜÃܳ×</param>
/// <returns>¼ÓÃܺóµÄÊý¾Ý</returns>
public static string Encode(string encryptString, string encryptKey)
{
encryptKey = Utils.GetSubString(encryptKey, 32, "");
encryptKey = encryptKey.PadRight(32, ' ');
RijndaelManaged rijndaelProvider = new RijndaelManaged();
rijndaelProvider.Key = Encoding.UTF8.GetBytes(encryptKey.Substring(0, 32));
rijndaelProvider.IV = IV;
ICryptoTransform rijndaelEncrypt = rijndaelProvider.CreateEncryptor();
byte[] inputData = Encoding.UTF8.GetBytes(encryptString);
byte[] encryptedData = rijndaelEncrypt.TransformFinalBlock(inputData, 0, inputData.Length);
return Convert.ToBase64String(encryptedData);
}
/// <summary>
/// AES½âÃÜ
/// </summary>
/// <param name="decryptString">ÐèÒª½âÃܵÄÊý¾Ý</param>
/// <param nam
Ïà¹ØÎĵµ£º
NandFlashϵÁÐÖ®¶þ£ºS3C2410¶ÁдNand Flash·ÖÎö
2009Äê12ÔÂ09ÈÕ ÐÇÆÚÈý 09:06
Ò»¡¢½á¹¹·ÖÎö
S3C2410´¦ÀíÆ÷¼¯³ÉÁË8λNandFlash¿ØÖÆÆ÷¡£Ä¿Ç°Êг¡Éϳ£¼ûµÄ8λNandFlashÓÐÈýÐǹ«Ë¾µÄk9f1208¡¢k9f1g08¡¢k9f2g08µÈ¡£k9f1208¡¢k9f1g08¡¢k9f2g08µÄÊý¾ÝÒ³´óС·Ö±ðΪ512Byte¡¢2kByte¡¢2kByte¡£ËüÃÇÔÚѰַ·½Ê½ÉÏÓÐÒ»¶¨²îÒ죬ËùÒÔ³ÌÐ ......
#include <stdio.h>
#include <stdlib.h> //use malloc, free
#include <string.h> //use memset
#include <ctype.h> //use isdigit
#define ERROR_ILLEGAL_CHAR 1 //define error illegal character as 1
#define ERROR_NUMBERS_DIF 2 //define error numbers is not the same in diffe ......
#apt-get install gcc (±àÒëÆ÷)
#apt-get install gdb (µ÷ÊÔ)
#apt-get install libc6-dev (¿ª·¢¿â)
Èç¹ûûÓпª·¢¿â£¬gccµÄʱºò¾Í»á´íÎó
gcc h.c
h.c: In function ‘main’:
h.c:1: warning: incompatible implicit declaration of built-in function ‘prin ......
http://sculibin.bokee.com/5628909.html
1.ÒýÑÔ
¡¡¡¡±¾ÎĵÄд×÷Ä¿µÄ²¢²»ÔÚÓÚÌṩC/C++³ÌÐòÔ±ÇóÖ°ÃæÊÔÖ¸µ¼£¬¶øÖ¼ÔÚ´Ó¼¼ÊõÉÏ·ÖÎöÃæÊÔÌâµÄÄÚº¡£ÎÄÖеĴó¶àÊýÃæÊÔÌâÀ´×Ô¸÷´óÂÛ̳£¬²¿·ÖÊÔÌâ½â´ðÒ²²Î¿¼ÁËÍøÓѵÄÒâ¼û¡£
¡¡¡¡Ðí¶àÃæÊÔÌâ¿´ËÆ¼òµ¥£¬È´ÐèÒªÉîºñµÄ»ù±¾¹¦²ÅÄܸø³öÍêÃÀµÄ½â´ð¡£ÆóÒµÒªÇóÃæÊÔÕßдһ¸ö×î¼òµ¥µÄstrcpyº¯Ê ......
CºÍÖ¸Õëѧϰ±Ê¼Ç £¨1£©
µÚ¶þÕ »ù±¾ÖªÊ¶
»·¾³£º·ÖΪ·ÒëºÍÖ´ÐÐ2¸ö¹ý³Ì¡£ÆäÖзÒë¿ÉÒÔÀí½âΪÊÇÒ»¸ö´Ó³ÌÐò—Ä¿±ê´úÂë—Á´½ÓÆ÷µÄ¹ý³Ì¡£±àÒë¹ý³ÌÓУº
1Ô¤´¦ÀíÆ÷£º´¦Àí#define #includeÕâÒ»Àà´úÂëµÄ¹ý³Ì£»
2Ô´´úÂë½âÎö£º²úÉú´íÎóºÍ¾¯¸æ£»
3ÓÅ»¯Æ÷£ºÓÐÀûÓÚÓÅ»¯´úÂ룬Ìá¸ßЧ ......