67 123
发新话题
打印

[TIPS]大量应用密码学算法源代码上传(更新中)

SEAL压缩包

附件

SEAL.zip (4 KB)

2005-10-26 03:23, 下载次数: 97

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

SHA算法源代码

附件

SHA.zip (16 KB)

2005-10-26 03:24, 下载次数: 138

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

一个密码学算法

附件

一个密码学算法.zip (43 KB)

2005-10-26 03:25, 下载次数: 128

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

一个算法

附件

一个算法.zip (15 KB)

2005-10-26 03:25, 下载次数: 105

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

TWOFISH压缩包

附件

TWOFISH.zip (105 KB)

2005-10-26 03:25, 下载次数: 125

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

BASE64JAVA

附件

BASE64JAVA.rar (36 KB)

2005-10-26 03:26, 下载次数: 78

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

TEA C语言描述

附件

TEA.zip (2 KB)

2005-10-26 03:26, 下载次数: 98

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

BIG2GB压缩包

附件

BIG2GB.zip (70 KB)

2005-10-26 03:26, 下载次数: 111

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

TINKER压缩包

附件

TINKER.tar (8 KB)

2005-10-26 03:27, 下载次数: 90

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

blowfish
复制内容到剪贴板
代码:
/*
blowfish.h:  Header file for blowfish.c

Copyright (C) 1997 by Paul Kocher

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA


See blowfish.c for more information about this file.
*/

  
typedef struct {
  unsigned long P[16 + 2];
  unsigned long S[4][256];
} BLOWFISH_CTX;

void Blowfish_Init(BLOWFISH_CTX *ctx, unsigned char *key, int keyLen);
void Blowfish_Encrypt(BLOWFISH_CTX *ctx, unsigned long *xl, unsigned long *xr);
void Blowfish_Decrypt(BLOWFISH_CTX *ctx, unsigned long *xl, unsigned long *xr);


/*
blowfish.c:  C implementation of the Blowfish algorithm.

Copyright (C) 1997 by Paul Kocher

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

  
     

COMMENTS ON USING THIS CODE:

Normal usage is as follows:
  [1] Allocate a BLOWFISH_CTX.  (It may be too big for the stack.)
  [2] Call Blowfish_Init with a pointer to your BLOWFISH_CTX, a pointer to
     the key, and the number of bytes in the key.
  [3] To encrypt a 64-bit block, call Blowfish_Encrypt with a pointer to
     BLOWFISH_CTX, a pointer to the 32-bit left half of the plaintext
       and a pointer to the 32-bit right half.  The plaintext will be
       overwritten with the ciphertext.
  [4] Decryption is the same as encryption except that the plaintext and
     ciphertext are reversed.

Warning #1:  The code does not check key lengths. (Caveat encryptor.)
Warning #2:  Beware that Blowfish keys repeat such that "ab" = "abab".
Warning #3:  It is normally a good idea to zeroize the BLOWFISH_CTX before
  freeing it.
Warning #4:  Endianness conversions are the responsibility of the caller.
  (To encrypt bytes on a little-endian platforms, you'll probably want
  to swap bytes around instead of just casting.)
Warning #5:  Make sure to use a reasonable mode of operation for your
  application.  (If you don't know what CBC mode is, see Warning #7.)
Warning #6:  This code is susceptible to timing attacks.
Warning #7:  Security engineering is risky and non-intuitive.  Have someone
  check your work.  If you don't know what you are doing, get help.


This is code is fast enough for most applications, but is not optimized for
speed.

If you require this code under a license other than LGPL, please ask.  (I
can be located using your favorite search engine.)  Unfortunately, I do not
have time to provide unpaid support for everyone who uses this code.  

                              -- Paul Kocher
*/


#include "blowfish.h"

#define N          16

static const unsigned long ORIG_P[16 + 2] = {
      0x243F6A88L, 0x85A308D3L, 0x13198A2EL, 0x03707344L,
      0xA4093822L, 0x299F31D0L, 0x082EFA98L, 0xEC4E6C89L,
      0x452821E6L, 0x38D01377L, 0xBE5466CFL, 0x34E90C6CL,
      0xC0AC29B7L, 0xC97C50DDL, 0x3F84D5B5L, 0xB5470917L,
      0x9216D5D9L, 0x8979FB1BL
};

static const unsigned long ORIG_S[4][256] = {
   {  0xD1310BA6L, 0x98DFB5ACL, 0x2FFD72DBL, 0xD01ADFB7L,
      0xB8E1AFEDL, 0x6A267E96L, 0xBA7C9045L, 0xF12C7F99L,
      0x24A19947L, 0xB3916CF7L, 0x0801F2E2L, 0x858EFC16L,
      0x636920D8L, 0x71574E69L, 0xA458FEA3L, 0xF4933D7EL,
      0x0D95748FL, 0x728EB658L, 0x718BCD58L, 0x82154AEEL,
      0x7B54A41DL, 0xC25A59B5L, 0x9C30D539L, 0x2AF26013L,
      0xC5D1B023L, 0x286085F0L, 0xCA417918L, 0xB8DB38EFL,
      0x8E79DCB0L, 0x603A180EL, 0x6C9E0E8BL, 0xB01E8A3EL,
      0xD71577C1L, 0xBD314B27L, 0x78AF2FDAL, 0x55605C60L,
      0xE65525F3L, 0xAA55AB94L, 0x57489862L, 0x63E81440L,
      0x55CA396AL, 0x2AAB10B6L, 0xB4CC5C34L, 0x1141E8CEL,
      0xA15486AFL, 0x7C72E993L, 0xB3EE1411L, 0x636FBC2AL,
      0x2BA9C55DL, 0x741831F6L, 0xCE5C3E16L, 0x9B87931EL,
      0xAFD6BA33L, 0x6C24CF5CL, 0x7A325381L, 0x28958677L,
      0x3B8F4898L, 0x6B4BB9AFL, 0xC4BFE81BL, 0x66282193L,
      0x61D809CCL, 0xFB21A991L, 0x487CAC60L, 0x5DEC8032L,
      0xEF845D5DL, 0xE98575B1L, 0xDC262302L, 0xEB651B88L,
      0x23893E81L, 0xD396ACC5L, 0x0F6D6FF3L, 0x83F44239L,
      0x2E0B4482L, 0xA4842004L, 0x69C8F04AL, 0x9E1F9B5EL,
      0x21C66842L, 0xF6E96C9AL, 0x670C9C61L, 0xABD388F0L,
      0x6A51A0D2L, 0xD8542F68L, 0x960FA728L, 0xAB5133A3L,
      0x6EEF0B6CL, 0x137A3BE4L, 0xBA3BF050L, 0x7EFB2A98L,
      0xA1F1651DL, 0x39AF0176L, 0x66CA593EL, 0x82430E88L,
      0x8CEE8619L, 0x456F9FB4L, 0x7D84A5C3L, 0x3B8B5EBEL,
      0xE06F75D8L, 0x85C12073L, 0x401A449FL, 0x56C16AA6L,
      0x4ED3AA62L, 0x363F7706L, 0x1BFEDF72L, 0x429B023DL,
      0x37D0D724L, 0xD00A1248L, 0xDB0FEAD3L, 0x49F1C09BL,
      0x075372C9L, 0x80991B7BL, 0x25D479D8L, 0xF6E8DEF7L,
      0xE3FE501AL, 0xB6794C3BL, 0x976CE0BDL, 0x04C006BAL,
      0xC1A94FB6L, 0x409F60C4L, 0x5E5C9EC2L, 0x196A2463L,
      0x68FB6FAFL, 0x3E6C53B5L, 0x1339B2EBL, 0x3B52EC6FL,
      0x6DFC511FL, 0x9B30952CL, 0xCC814544L, 0xAF5EBD09L,
      0xBEE3D004L, 0xDE334AFDL, 0x660F2807L, 0x192E4BB3L,
      0xC0CBA857L, 0x45C8740FL, 0xD20B5F39L, 0xB9D3FBDBL,
      0x5579C0BDL, 0x1A60320AL, 0xD6A100C6L, 0x402C7279L,
      0x679F25FEL, 0xFB1FA3CCL, 0x8EA5E9F8L, 0xDB3222F8L,
      0x3C7516DFL, 0xFD616B15L, 0x2F501EC8L, 0xAD0552ABL,
      0x323DB5FAL, 0xFD238760L, 0x53317B48L, 0x3E00DF82L,
      0x9E5C57BBL, 0xCA6F8CA0L, 0x1A87562EL, 0xDF1769DBL,
      0xD542A8F6L, 0x287EFFC3L, 0xAC6732C6L, 0x8C4F5573L,
      0x695B27B0L, 0xBBCA58C8L, 0xE1FFA35DL, 0xB8F011A0L,
      0x10FA3D98L, 0xFD2183B8L, 0x4AFCB56CL, 0x2DD1D35BL,
      0x9A53E479L, 0xB6F84565L, 0xD28E49BCL, 0x4BFB9790L,
      0xE1DDF2DAL, 0xA4CB7E33L, 0x62FB1341L, 0xCEE4C6E8L,
      0xEF20CADAL, 0x36774C01L, 0xD07E9EFEL, 0x2BF11FB4L,
      0x95DBDA4DL, 0xAE909198L, 0xEAAD8E71L, 0x6B93D5A0L,
      0xD08ED1D0L, 0xAFC725E0L, 0x8E3C5B2FL, 0x8E7594B7L,
      0x8FF6E2FBL, 0xF2122B64L, 0x8888B812L, 0x900DF01CL,
      0x4FAD5EA0L, 0x688FC31CL, 0xD1CFF191L, 0xB3A8C1ADL,
      0x2F2F2218L, 0xBE0E1777L, 0xEA752DFEL, 0x8B021FA1L,
      0xE5A0CC0FL, 0xB56F74E8L, 0x18ACF3D6L, 0xCE89E299L,
      0xB4A84FE0L, 0xFD13E0B7L, 0x7CC43B81L, 0xD2ADA8D9L,
      0x165FA266L, 0x80957705L, 0x93CC7314L, 0x211A1477L,
      0xE6AD2065L, 0x77B5FA86L, 0xC75442F5L, 0xFB9D35CFL,
      0xEBCDAF0CL, 0x7B3E89A0L, 0xD6411BD3L, 0xAE1E7E49L,
      0x00250E2DL, 0x2071B35EL, 0x226800BBL, 0x57B8E0AFL,
      0x2464369BL, 0xF009B91EL, 0x5563911DL, 0x59DFA6AAL,
      0x78C14389L, 0xD95A537FL, 0x207D5BA2L, 0x02E5B9C5L,
      0x83260376L, 0x6295CFA9L, 0x11C81968L, 0x4E734A41L,
      0xB3472DCAL, 0x7B14A94AL, 0x1B510052L, 0x9A532915L,
      0xD60F573FL, 0xBC9BC6E4L, 0x2B60A476L, 0x81E67400L,
      0x08BA6FB5L, 0x571BE91FL, 0xF296EC6BL, 0x2A0DD915L,
      0xB6636521L, 0xE7B9F9B6L, 0xFF34052EL, 0xC5855664L,
      0x53B02D5DL, 0xA99F8FA1L, 0x08BA4799L, 0x6E85076AL  },
   
     {  0x4B7A70E9L, 0xB5B32944L, 0xDB75092EL, 0xC4192623L,
      0xAD6EA6B0L, 0x49A7DF7DL, 0x9CEE60B8L, 0x8FEDB266L,
      0xECAA8C71L, 0x699A17FFL, 0x5664526CL, 0xC2B19EE1L,
      0x193602A5L, 0x75094C29L, 0xA0591340L, 0xE4183A3EL,
      0x3F54989AL, 0x5B429D65L, 0x6B8FE4D6L, 0x99F73FD6L,
      0xA1D29C07L, 0xEFE830F5L, 0x4D2D38E6L, 0xF0255DC1L,
      0x4CDD2086L, 0x8470EB26L, 0x6382E9C6L, 0x021ECC5EL,
      0x09686B3FL, 0x3EBAEFC9L, 0x3C971814L, 0x6B6A70A1L,
      0x687F3584L, 0x52A0E286L, 0xB79C5305L, 0xAA500737L,
      0x3E07841CL, 0x7FDEAE5CL, 0x8E7D44ECL, 0x5716F2B8L,
      0xB03ADA37L, 0xF0500C0DL, 0xF01C1F04L, 0x0200B3FFL,
      0xAE0CF51AL, 0x3CB574B2L, 0x25837A58L, 0xDC0921BDL,
      0xD19113F9L, 0x7CA92FF6L, 0x94324773L, 0x22F54701L,
      0x3AE5E581L, 0x37C2DADCL, 0xC8B57634L, 0x9AF3DDA7L,
      0xA9446146L, 0x0FD0030EL, 0xECC8C73EL, 0xA4751E41L,
      0xE238CD99L, 0x3BEA0E2FL, 0x3280BBA1L, 0x183EB331L,
      0x4E548B38L, 0x4F6DB908L, 0x6F420D03L, 0xF60A04BFL,
      0x2CB81290L, 0x24977C79L, 0x5679B072L, 0xBCAF89AFL,
      0xDE9A771FL, 0xD9930810L, 0xB38BAE12L, 0xDCCF3F2EL,
      0x5512721FL, 0x2E6B7124L, 0x501ADDE6L, 0x9F84CD87L,
      0x7A584718L, 0x7408DA17L, 0xBC9F9ABCL, 0xE94B7D8CL,
      0xEC7AEC3AL, 0xDB851DFAL, 0x63094366L, 0xC464C3D2L,
      0xEF1C1847L, 0x3215D908L, 0xDD433B37L, 0x24C2BA16L,
      0x12A14D43L, 0x2A65C451L, 0x50940002L, 0x133AE4DDL,
      0x71DFF89EL, 0x10314E55L, 0x81AC77D6L, 0x5F11199BL,
      0x043556F1L, 0xD7A3C76BL, 0x3C11183BL, 0x5924A509L,
      0xF28FE6EDL, 0x97F1FBFAL, 0x9EBABF2CL, 0x1E153C6EL,
      0x86E34570L, 0xEAE96FB1L, 0x860E5E0AL, 0x5A3E2AB3L,
      0x771FE71CL, 0x4E3D06FAL, 0x2965DCB9L, 0x99E71D0FL,
      0x803E89D6L, 0x5266C825L, 0x2E4CC978L, 0x9C10B36AL,
      0xC6150EBAL, 0x94E2EA78L, 0xA5FC3C53L, 0x1E0A2DF4L,
      0xF2F74EA7L, 0x361D2B3DL, 0x1939260FL, 0x19C27960L,
      0x5223A708L, 0xF71312B6L, 0xEBADFE6EL, 0xEAC31F66L,
      0xE3BC4595L, 0xA67BC883L, 0xB17F37D1L, 0x018CFF28L,
      0xC332DDEFL, 0xBE6C5AA5L, 0x65582185L, 0x68AB9802L,
      0xEECEA50FL, 0xDB2F953BL, 0x2AEF7DADL, 0x5B6E2F84L,
      0x1521B628L, 0x29076170L, 0xECDD4775L, 0x619F1510L,
      0x13CCA830L, 0xEB61BD96L, 0x0334FE1EL, 0xAA0363CFL,
      0xB5735C90L, 0x4C70A239L, 0xD59E9E0BL, 0xCBAADE14L,
      0xEECC86BCL, 0x60622CA7L, 0x9CAB5CABL, 0xB2F3846EL,
      0x648B1EAFL, 0x19BDF0CAL, 0xA02369B9L, 0x655ABB50L,
      0x40685A32L, 0x3C2AB4B3L, 0x319EE9D5L, 0xC021B8F7L,
      0x9B540B19L, 0x875FA099L, 0x95F7997EL, 0x623D7DA8L,
      0xF837889AL, 0x97E32D77L, 0x11ED935FL, 0x16681281L,
      0x0E358829L, 0xC7E61FD6L, 0x96DEDFA1L, 0x7858BA99L,
      0x57F584A5L, 0x1B227263L, 0x9B83C3FFL, 0x1AC24696L,
      0xCDB30AEBL, 0x532E3054L, 0x8FD948E4L, 0x6DBC3128L,
      0x58EBF2EFL, 0x34C6FFEAL, 0xFE28ED61L, 0xEE7C3C73L,
      0x5D4A14D9L, 0xE864B7E3L, 0x42105D14L, 0x203E13E0L,
      0x45EEE2B6L, 0xA3AAABEAL, 0xDB6C4F15L, 0xFACB4FD0L,
      0xC742F442L, 0xEF6ABBB5L, 0x654F3B1DL, 0x41CD2105L,
      0xD81E799EL, 0x86854DC7L, 0xE44B476AL, 0x3D816250L,
      0xCF62A1F2L, 0x5B8D2646L, 0xFC8883A0L, 0xC1C7B6A3L,
      0x7F1524C3L, 0x69CB7492L, 0x47848A0BL, 0x5692B285L,
      0x095BBF00L, 0xAD19489DL, 0x1462B174L, 0x23820E00L,
      0x58428D2AL, 0x0C55F5EAL, 0x1DADF43EL, 0x233F7061L,
      0x3372F092L, 0x8D937E41L, 0xD65FECF1L, 0x6C223BDBL,
      0x7CDE3759L, 0xCBEE7460L, 0x4085F2A7L, 0xCE77326EL,
      0xA6078084L, 0x19F8509EL, 0xE8EFD855L, 0x61D99735L,
      0xA969A7AAL, 0xC50C06C2L, 0x5A04ABFCL, 0x800BCADCL,
      0x9E447A2EL, 0xC3453484L, 0xFDD56705L, 0x0E1E9EC9L,
      0xDB73DBD3L, 0x105588CDL, 0x675FDA79L, 0xE3674340L,
      0xC5C43465L, 0x713E38D8L, 0x3D28F89EL, 0xF16DFF20L,
      0x153E21E7L, 0x8FB03D4AL, 0xE6E39F2BL, 0xDB83ADF7L  },

   {  0xE93D5A68L, 0x948140F7L, 0xF64C261CL, 0x94692934L,
      0x411520F7L, 0x7602D4F7L, 0xBCF46B2EL, 0xD4A20068L,
      0xD4082471L, 0x3320F46AL, 0x43B7D4B7L, 0x500061AFL,
      0x1E39F62EL, 0x97244546L, 0x14214F74L, 0xBF8B8840L,
      0x4D95FC1DL, 0x96B591AFL, 0x70F4DDD3L, 0x66A02F45L,
      0xBFBC09ECL, 0x03BD9785L, 0x7FAC6DD0L, 0x31CB8504L,
      0x96EB27B3L, 0x55FD3941L, 0xDA2547E6L, 0xABCA0A9AL,
      0x28507825L, 0x530429F4L, 0x0A2C86DAL, 0xE9B66DFBL,
      0x68DC1462L, 0xD7486900L, 0x680EC0A4L, 0x27A18DEEL,
      0x4F3FFEA2L, 0xE887AD8CL, 0xB58CE006L, 0x7AF4D6B6L,
      0xAACE1E7CL, 0xD3375FECL, 0xCE78A399L, 0x406B2A42L,
      0x20FE9E35L, 0xD9F385B9L, 0xEE39D7ABL, 0x3B124E8BL,
      0x1DC9FAF7L, 0x4B6D1856L, 0x26A36631L, 0xEAE397B2L,
      0x3A6EFA74L, 0xDD5B4332L, 0x6841E7F7L, 0xCA7820FBL,
      0xFB0AF54EL, 0xD8FEB397L, 0x454056ACL, 0xBA489527L,
      0x55533A3AL, 0x20838D87L, 0xFE6BA9B7L, 0xD096954BL,
      0x55A867BCL, 0xA1159A58L, 0xCCA92963L, 0x99E1DB33L,
      0xA62A4A56L, 0x3F3125F9L, 0x5EF47E1CL, 0x9029317CL,
      0xFDF8E802L, 0x04272F70L, 0x80BB155CL, 0x05282CE3L,
      0x95C11548L, 0xE4C66D22L, 0x48C1133FL, 0xC70F86DCL,
      0x07F9C9EEL, 0x41041F0FL, 0x404779A4L, 0x5D886E17L,
      0x325F51EBL, 0xD59BC0D1L, 0xF2BCC18FL, 0x41113564L,
      0x257B7834L, 0x602A9C60L, 0xDFF8E8A3L, 0x1F636C1BL,
      0x0E12B4C2L, 0x02E1329EL, 0xAF664FD1L, 0xCAD18115L,
      0x6B2395E0L, 0x333E92E1L, 0x3B240B62L, 0xEEBEB922L,
      0x85B2A20EL, 0xE6BA0D99L, 0xDE720C8CL, 0x2DA2F728L,
      0xD0127845L, 0x95B794FDL, 0x647D0862L, 0xE7CCF5F0L,
      0x5449A36FL, 0x877D48FAL, 0xC39DFD27L, 0xF33E8D1EL,
      0x0A476341L, 0x992EFF74L, 0x3A6F6EABL, 0xF4F8FD37L,
      0xA812DC60L, 0xA1EBDDF8L, 0x991BE14CL, 0xDB6E6B0DL,
      0xC67B5510L, 0x6D672C37L, 0x2765D43BL, 0xDCD0E804L,
      0xF1290DC7L, 0xCC00FFA3L, 0xB5390F92L, 0x690FED0BL,
      0x667B9FFBL, 0xCEDB7D9CL, 0xA091CF0BL, 0xD9155EA3L,
      0xBB132F88L, 0x515BAD24L, 0x7B9479BFL, 0x763BD6EBL,
      0x37392EB3L, 0xCC115979L, 0x8026E297L, 0xF42E312DL,
      0x6842ADA7L, 0xC66A2B3BL, 0x12754CCCL, 0x782EF11CL,
      0x6A124237L, 0xB79251E7L, 0x06A1BBE6L, 0x4BFB6350L,
      0x1A6B1018L, 0x11CAEDFAL, 0x3D25BDD8L, 0xE2E1C3C9L,
      0x44421659L, 0x0A121386L, 0xD90CEC6EL, 0xD5ABEA2AL,
      0x64AF674EL, 0xDA86A85FL, 0xBEBFE988L, 0x64E4C3FEL,
      0x9DBC8057L, 0xF0F7C086L, 0x60787BF8L, 0x6003604DL,
      0xD1FD8346L, 0xF6381FB0L, 0x7745AE04L, 0xD736FCCCL,
      0x83426B33L, 0xF01EAB71L, 0xB0804187L, 0x3C005E5FL,
      0x77A057BEL, 0xBDE8AE24L, 0x55464299L, 0xBF582E61L,
      0x4E58F48FL, 0xF2DDFDA2L, 0xF474EF38L, 0x8789BDC2L,
      0x5366F9C3L, 0xC8B38E74L, 0xB475F255L, 0x46FCD9B9L,
      0x7AEB2661L, 0x8B1DDF84L, 0x846A0E79L, 0x915F95E2L,
      0x466E598EL, 0x20B45770L, 0x8CD55591L, 0xC902DE4CL,
      0xB90BACE1L, 0xBB8205D0L, 0x11A86248L, 0x7574A99EL,
      0xB77F19B6L, 0xE0A9DC09L, 0x662D09A1L, 0xC4324633L,
      0xE85A1F02L, 0x09F0BE8CL, 0x4A99A025L, 0x1D6EFE10L,
      0x1AB93D1DL, 0x0BA5A4DFL, 0xA186F20FL, 0x2868F169L,
      0xDCB7DA83L, 0x573906FEL, 0xA1E2CE9BL, 0x4FCD7F52L,
      0x50115E01L, 0xA70683FAL, 0xA002B5C4L, 0x0DE6D027L,
      0x9AF88C27L, 0x773F8641L, 0xC3604C06L, 0x61A806B5L,
      0xF0177A28L, 0xC0F586E0L, 0x006058AAL, 0x30DC7D62L,
      0x11E69ED7L, 0x2338EA63L, 0x53C2DD94L, 0xC2C21634L,
      0xBBCBEE56L, 0x90BCB6DEL, 0xEBFC7DA1L, 0xCE591D76L,
      0x6F05E409L, 0x4B7C0188L, 0x39720A3DL, 0x7C927C24L,
      0x86E3725FL, 0x724D9DB9L, 0x1AC15BB4L, 0xD39EB8FCL,
      0xED545578L, 0x08FCA5B5L, 0xD83D7CD3L, 0x4DAD0FC4L,
      0x1E50EF5EL, 0xB161E6F8L, 0xA28514D9L, 0x6C51133CL,
      0x6FD5C7E7L, 0x56E14EC4L, 0x362ABFCEL, 0xDDC6C837L,
      0xD79A3234L, 0x92638212L, 0x670EFA8EL, 0x406000E0L  },

   {  0x3A39CE37L, 0xD3FAF5CFL, 0xABC27737L, 0x5AC52D1BL,
      0x5CB0679EL, 0x4FA33742L, 0xD3822740L, 0x99BC9BBEL,
      0xD5118E9DL, 0xBF0F7315L, 0xD62D1C7EL, 0xC700C47BL,
      0xB78C1B6BL, 0x21A19045L, 0xB26EB1BEL, 0x6A366EB4L,
      0x5748AB2FL, 0xBC946E79L, 0xC6A376D2L, 0x6549C2C8L,
      0x530FF8EEL, 0x468DDE7DL, 0xD5730A1DL, 0x4CD04DC6L,
      0x2939BBDBL, 0xA9BA4650L, 0xAC9526E8L, 0xBE5EE304L,
      0xA1FAD5F0L, 0x6A2D519AL, 0x63EF8CE2L, 0x9A86EE22L,
      0xC089C2B8L, 0x43242EF6L, 0xA51E03AAL, 0x9CF2D0A4L,
      0x83C061BAL, 0x9BE96A4DL, 0x8FE51550L, 0xBA645BD6L,
      0x2826A2F9L, 0xA73A3AE1L, 0x4BA99586L, 0xEF5562E9L,
      0xC72FEFD3L, 0xF752F7DAL, 0x3F046F69L, 0x77FA0A59L,
      0x80E4A915L, 0x87B08601L, 0x9B09E6ADL, 0x3B3EE593L,
      0xE990FD5AL, 0x9E34D797L, 0x2CF0B7D9L, 0x022B8B51L,
      0x96D5AC3AL, 0x017DA67DL, 0xD1CF3ED6L, 0x7C7D2D28L,
      0x1F9F25CFL, 0xADF2B89BL, 0x5AD6B472L, 0x5A88F54CL,
      0xE029AC71L, 0xE019A5E6L, 0x47B0ACFDL, 0xED93FA9BL,
      0xE8D3C48DL, 0x283B57CCL, 0xF8D56629L, 0x79132E28L,
      0x785F0191L, 0xED756055L, 0xF7960E44L, 0xE3D35E8CL,
      0x15056DD4L, 0x88F46DBAL, 0x03A16125L, 0x0564F0BDL,
      0xC3EB9E15L, 0x3C9057A2L, 0x97271AECL, 0xA93A072AL,
      0x1B3F6D9BL, 0x1E6321F5L, 0xF59C66FBL, 0x26DCF319L,
      0x7533D928L, 0xB155FDF5L, 0x03563482L, 0x8ABA3CBBL,
      0x28517711L, 0xC20AD9F8L, 0xABCC5167L, 0xCCAD925FL,
      0x4DE81751L, 0x3830DC8EL, 0x379D5862L, 0x9320F991L,
      0xEA7A90C2L, 0xFB3E7BCEL, 0x5121CE64L, 0x774FBE32L,
      0xA8B6E37EL, 0xC3293D46L, 0x48DE5369L, 0x6413E680L,
      0xA2AE0810L, 0xDD6DB224L, 0x69852DFDL, 0x09072166L,
      0xB39A460AL, 0x6445C0DDL, 0x586CDECFL, 0x1C20C8AEL,
      0x5BBEF7DDL, 0x1B588D40L, 0xCCD2017FL, 0x6BB4E3BBL,
      0xDDA26A7EL, 0x3A59FF45L, 0x3E350A44L, 0xBCB4CDD5L,
      0x72EACEA8L, 0xFA6484BBL, 0x8D6612AEL, 0xBF3C6F47L,
      0xD29BE463L, 0x542F5D9EL, 0xAEC2771BL, 0xF64E6370L,
      0x740E0D8DL, 0xE75B1357L, 0xF8721671L, 0xAF537D5DL,
      0x4040CB08L, 0x4EB4E2CCL, 0x34D2466AL, 0x0115AF84L,
      0xE1B00428L, 0x95983A1DL, 0x06B89FB4L, 0xCE6EA048L,
      0x6F3F3B82L, 0x3520AB82L, 0x011A1D4BL, 0x277227F8L,
      0x611560B1L, 0xE7933FDCL, 0xBB3A792BL, 0x344525BDL,
      0xA08839E1L, 0x51CE794BL, 0x2F32C9B7L, 0xA01FBAC9L,
      0xE01CC87EL, 0xBCC7D1F6L, 0xCF0111C3L, 0xA1E8AAC7L,
      0x1A908749L, 0xD44FBD9AL, 0xD0DADECBL, 0xD50ADA38L,
      0x0339C32AL, 0xC6913667L, 0x8DF9317CL, 0xE0B12B4FL,
      0xF79E59B7L, 0x43F5BB3AL, 0xF2D519FFL, 0x27D9459CL,
      0xBF97222CL, 0x15E6FC2AL, 0x0F91FC71L, 0x9B941525L,
      0xFAE59361L, 0xCEB69CEBL, 0xC2A86459L, 0x12BAA8D1L,
      0xB6C1075EL, 0xE3056A0CL, 0x10D25065L, 0xCB03A442L,
      0xE0EC6E0EL, 0x1698DB3BL, 0x4C98A0BEL, 0x3278E964L,
      0x9F1F9532L, 0xE0D392DFL, 0xD3A0342BL, 0x8971F21EL,
      0x1B0A7441L, 0x4BA3348CL, 0xC5BE7120L, 0xC37632D8L,
      0xDF359F8DL, 0x9B992F2EL, 0xE60B6F47L, 0x0FE3F11DL,
      0xE54CDA54L, 0x1EDAD891L, 0xCE6279CFL, 0xCD3E7E6FL,
      0x1618B166L, 0xFD2C1D05L, 0x848FD2C5L, 0xF6FB2299L,
      0xF523F357L, 0xA6327623L, 0x93A83531L, 0x56CCCD02L,
      0xACF08162L, 0x5A75EBB5L, 0x6E163697L, 0x88D273CCL,
      0xDE966292L, 0x81B949D0L, 0x4C50901BL, 0x71C65614L,
      0xE6C6C7BDL, 0x327A140AL, 0x45E1D006L, 0xC3F27B9AL,
      0xC9AA53FDL, 0x62A80F00L, 0xBB25BFE2L, 0x35BDD2F6L,
      0x71126905L, 0xB2040222L, 0xB6CBCF7CL, 0xCD769C2BL,
      0x53113EC0L, 0x1640E3D3L, 0x38ABBD60L, 0x2547ADF0L,
      0xBA38209CL, 0xF746CE76L, 0x77AFA1C5L, 0x20756060L,
      0x85CBFE4EL, 0x8AE88DD8L, 0x7AAAF9B0L, 0x4CF9AA7EL,
      0x1948C25CL, 0x02FB8A8CL, 0x01C36AE4L, 0xD6EBE1F9L,
      0x90D4F869L, 0xA65CDEA0L, 0x3F09252DL, 0xC208E69FL,
      0xB74E6132L, 0xCE77E25BL, 0x578FDFE3L, 0x3AC372E6L  }
};


static unsigned long F(BLOWFISH_CTX *ctx, unsigned long x)
{
  unsigned short a, b, c, d;
  unsigned long  y;

  d = (unsigned short)(x & 0xFF);//转换为字节 8位
  x >>= 8;                //右移8位
  c = (unsigned short)(x & 0xFF);//转换为字节 8位
  x >>= 8;                //右移8位
  b = (unsigned short)(x & 0xFF);//转换为字节 8位
  x >>= 8;                //右移8位
  a = (unsigned short)(x & 0xFF);//转换为字节 8位
  y = ctx->S[0][a] + ctx->S[1][b];//取值相加
  y = y ^ ctx->S[2][c];        //取值异或
  y = y + ctx->S[3][d];        //取值相加

  return y;
}


void Blowfish_Encrypt(BLOWFISH_CTX *ctx, unsigned long *xl, unsigned long *xr)
{
  unsigned long  Xl;
  unsigned long  Xr;
  unsigned long  temp;
  short     i;

  Xl = *xl;
  Xr = *xr;

  for (i = 0; i < N; ++i) //16遍
  {
   Xl = Xl ^ ctx->P[i];//异或
   Xr = F(ctx, Xl) ^ Xr;//异或

   temp = Xl;
   Xl = Xr;      //交换
   Xr = temp;
  }

  temp = Xl;
  Xl = Xr;  //交换
  Xr = temp;

  Xr = Xr ^ ctx->P[N];//异或
  Xl = Xl ^ ctx->P[N + 1];//异或

  *xl = Xl;
  *xr = Xr;
}


void Blowfish_Decrypt(BLOWFISH_CTX *ctx, unsigned long *xl, unsigned long *xr){
  unsigned long  Xl;
  unsigned long  Xr;
  unsigned long  temp;
  short     i;

  Xl = *xl;
  Xr = *xr;

  for (i = N + 1; i > 1; --i) {
   Xl = Xl ^ ctx->P[i];
   Xr = F(ctx, Xl) ^ Xr;

   /* Exchange Xl and Xr */
   temp = Xl;
   Xl = Xr;
   Xr = temp;
  }

  /* Exchange Xl and Xr */
  temp = Xl;
  Xl = Xr;
  Xr = temp;

  Xr = Xr ^ ctx->P[1];
  Xl = Xl ^ ctx->P[0];

  *xl = Xl;
  *xr = Xr;
}


void Blowfish_Init(BLOWFISH_CTX *ctx, unsigned char *key, int keyLen)
{
  int i, j, k;
  unsigned long data, datal, datar;

  for (i = 0; i < 4; i++)
  {
   for (j = 0; j < 256; j++)
    ctx->S[i][j] = ORIG_S[i][j];//初始化赋值 S[4][256];
  }

  j = 0;
  for (i = 0; i < N + 2; ++i) // N=16
  {
   data = 0x00000000;
   for (k = 0; k < 4; ++k)
     {
   
          data = (data << 8) | key[j];//data << 8 后与key[j]或
            j++;
   
          if (j >= keyLen)//
      j = 0;
   }
   ctx->P[i] = ORIG_P[i] ^ data;//ORIG_P[i] 异或 data后赋值给ctx->P[i]
  }

  datal = 0x00000000;
  datar = 0x00000000;

  for (i = 0; i < N + 2; i += 2)
  {
   Blowfish_Encrypt(ctx, &datal, &datar);//加密18遍
   ctx->P[i] = datal;
   ctx->P[i + 1] = datar;
  }

  for (i = 0; i < 4; ++i)
  {
   for (j = 0; j < 256; j += 2)
     {
    Blowfish_Encrypt(ctx, &datal, &datar);//加密4*256遍
    ctx->S[i][j] = datal;
    ctx->S[i][j + 1] = datar;
   }
  }
}

TOP

Base64算法完整源码与调用方法

附件

Base64算法完整源码与调用方法.rar (182 KB)

2006-3-16 00:56, 下载次数: 210

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

md5算法完整源码与调用方法

附件

md5算法完整源码与调用方法.rar (182 KB)

2006-3-16 01:06, 下载次数: 239

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

rsa算法完整源码与调用方法

附件

rsa算法完整源码与调用方法.rar (263 KB)

2006-3-16 01:07, 下载次数: 808

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

aes算法完整源码与调用方法

附件

aes算法完整源码与调用方法.rar (206 KB)

2006-3-16 01:08, 下载次数: 276

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

des算法完整源码与调用方法

附件

des算法完整源码与调用方法.rar (185 KB)

2006-3-16 01:09, 下载次数: 357

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

用MATLAB写的数字水印程序,其中有多个不同的方法。数字水印(MATLAB)

附件

数字水印.rar (2.17 MB)

2006-3-16 01:10, 下载次数: 1133

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

几百种加密算法库

附件

几百种加密算法库.rar (379 KB)

2006-3-16 01:11, 下载次数: 577

曾几何时,有人对我说:装B遭雷劈。我说:去你妈的。于是,这个人又对我说:如果再说脏话,上帝会惩罚你的。我说:我操上帝。结论:彪悍的人生不需要上帝。

TOP

 67 123
发新话题