⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 blowfish.java

📁 linux下建立JAVA虚拟机的源码KAFFE
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
                                    0xd7486900, 0x680ec0a4, 0x27a18dee,                                    0x4f3ffea2, 0xe887ad8c, 0xb58ce006,                                    0x7af4d6b6, 0xaace1e7c, 0xd3375fec,                                    0xce78a399, 0x406b2a42, 0x20fe9e35,                                    0xd9f385b9, 0xee39d7ab, 0x3b124e8b,                                    0x1dc9faf7, 0x4b6d1856, 0x26a36631,                                    0xeae397b2, 0x3a6efa74, 0xdd5b4332,                                    0x6841e7f7, 0xca7820fb, 0xfb0af54e,                                    0xd8feb397, 0x454056ac, 0xba489527,                                    0x55533a3a, 0x20838d87, 0xfe6ba9b7,                                    0xd096954b, 0x55a867bc, 0xa1159a58,                                    0xcca92963, 0x99e1db33, 0xa62a4a56,                                    0x3f3125f9, 0x5ef47e1c, 0x9029317c,                                    0xfdf8e802, 0x04272f70, 0x80bb155c,                                    0x05282ce3, 0x95c11548, 0xe4c66d22,                                    0x48c1133f, 0xc70f86dc, 0x07f9c9ee,                                    0x41041f0f, 0x404779a4, 0x5d886e17,                                    0x325f51eb, 0xd59bc0d1, 0xf2bcc18f,                                    0x41113564, 0x257b7834, 0x602a9c60,                                    0xdff8e8a3, 0x1f636c1b, 0x0e12b4c2,                                    0x02e1329e, 0xaf664fd1, 0xcad18115,                                    0x6b2395e0, 0x333e92e1, 0x3b240b62,                                    0xeebeb922, 0x85b2a20e, 0xe6ba0d99,                                    0xde720c8c, 0x2da2f728, 0xd0127845,                                    0x95b794fd, 0x647d0862, 0xe7ccf5f0,                                    0x5449a36f, 0x877d48fa, 0xc39dfd27,                                    0xf33e8d1e, 0x0a476341, 0x992eff74,                                    0x3a6f6eab, 0xf4f8fd37, 0xa812dc60,                                    0xa1ebddf8, 0x991be14c, 0xdb6e6b0d,                                    0xc67b5510, 0x6d672c37, 0x2765d43b,                                    0xdcd0e804, 0xf1290dc7, 0xcc00ffa3,                                    0xb5390f92, 0x690fed0b, 0x667b9ffb,                                    0xcedb7d9c, 0xa091cf0b, 0xd9155ea3,                                    0xbb132f88, 0x515bad24, 0x7b9479bf,                                    0x763bd6eb, 0x37392eb3, 0xcc115979,                                    0x8026e297, 0xf42e312d, 0x6842ada7,                                    0xc66a2b3b, 0x12754ccc, 0x782ef11c,                                    0x6a124237, 0xb79251e7, 0x06a1bbe6,                                    0x4bfb6350, 0x1a6b1018, 0x11caedfa,                                    0x3d25bdd8, 0xe2e1c3c9, 0x44421659,                                    0x0a121386, 0xd90cec6e, 0xd5abea2a,                                    0x64af674e, 0xda86a85f, 0xbebfe988,                                    0x64e4c3fe, 0x9dbc8057, 0xf0f7c086,                                    0x60787bf8, 0x6003604d, 0xd1fd8346,                                    0xf6381fb0, 0x7745ae04, 0xd736fccc,                                    0x83426b33, 0xf01eab71, 0xb0804187,                                    0x3c005e5f, 0x77a057be, 0xbde8ae24,                                    0x55464299, 0xbf582e61, 0x4e58f48f,                                    0xf2ddfda2, 0xf474ef38, 0x8789bdc2,                                    0x5366f9c3, 0xc8b38e74, 0xb475f255,                                    0x46fcd9b9, 0x7aeb2661, 0x8b1ddf84,                                    0x846a0e79, 0x915f95e2, 0x466e598e,                                    0x20b45770, 0x8cd55591, 0xc902de4c,                                    0xb90bace1, 0xbb8205d0, 0x11a86248,                                    0x7574a99e, 0xb77f19b6, 0xe0a9dc09,                                    0x662d09a1, 0xc4324633, 0xe85a1f02,                                    0x09f0be8c, 0x4a99a025, 0x1d6efe10,                                    0x1ab93d1d, 0x0ba5a4df, 0xa186f20f,                                    0x2868f169, 0xdcb7da83, 0x573906fe,                                    0xa1e2ce9b, 0x4fcd7f52, 0x50115e01,                                    0xa70683fa, 0xa002b5c4, 0x0de6d027,                                    0x9af88c27, 0x773f8641, 0xc3604c06,                                    0x61a806b5, 0xf0177a28, 0xc0f586e0,                                    0x006058aa, 0x30dc7d62, 0x11e69ed7,                                    0x2338ea63, 0x53c2dd94, 0xc2c21634,                                    0xbbcbee56, 0x90bcb6de, 0xebfc7da1,                                    0xce591d76, 0x6f05e409, 0x4b7c0188,                                    0x39720a3d, 0x7c927c24, 0x86e3725f,                                    0x724d9db9, 0x1ac15bb4, 0xd39eb8fc,                                    0xed545578, 0x08fca5b5, 0xd83d7cd3,                                    0x4dad0fc4, 0x1e50ef5e, 0xb161e6f8,                                    0xa28514d9, 0x6c51133c, 0x6fd5c7e7,                                    0x56e14ec4, 0x362abfce, 0xddc6c837,                                    0xd79a3234, 0x92638212, 0x670efa8e,                                    0x406000e0 };  /** Initial value of S-box 4. */  private static final int[] KS3 = { 0x3a39ce37, 0xd3faf5cf, 0xabc27737,                                    0x5ac52d1b, 0x5cb0679e, 0x4fa33742,                                    0xd3822740, 0x99bc9bbe, 0xd5118e9d,                                    0xbf0f7315, 0xd62d1c7e, 0xc700c47b,                                    0xb78c1b6b, 0x21a19045, 0xb26eb1be,                                    0x6a366eb4, 0x5748ab2f, 0xbc946e79,                                    0xc6a376d2, 0x6549c2c8, 0x530ff8ee,                                    0x468dde7d, 0xd5730a1d, 0x4cd04dc6,                                    0x2939bbdb, 0xa9ba4650, 0xac9526e8,                                    0xbe5ee304, 0xa1fad5f0, 0x6a2d519a,                                    0x63ef8ce2, 0x9a86ee22, 0xc089c2b8,                                    0x43242ef6, 0xa51e03aa, 0x9cf2d0a4,                                    0x83c061ba, 0x9be96a4d, 0x8fe51550,                                    0xba645bd6, 0x2826a2f9, 0xa73a3ae1,                                    0x4ba99586, 0xef5562e9, 0xc72fefd3,                                    0xf752f7da, 0x3f046f69, 0x77fa0a59,                                    0x80e4a915, 0x87b08601, 0x9b09e6ad,                                    0x3b3ee593, 0xe990fd5a, 0x9e34d797,                                    0x2cf0b7d9, 0x022b8b51, 0x96d5ac3a,                                    0x017da67d, 0xd1cf3ed6, 0x7c7d2d28,                                    0x1f9f25cf, 0xadf2b89b, 0x5ad6b472,                                    0x5a88f54c, 0xe029ac71, 0xe019a5e6,                                    0x47b0acfd, 0xed93fa9b, 0xe8d3c48d,                                    0x283b57cc, 0xf8d56629, 0x79132e28,                                    0x785f0191, 0xed756055, 0xf7960e44,                                    0xe3d35e8c, 0x15056dd4, 0x88f46dba,                                    0x03a16125, 0x0564f0bd, 0xc3eb9e15,                                    0x3c9057a2, 0x97271aec, 0xa93a072a,                                    0x1b3f6d9b, 0x1e6321f5, 0xf59c66fb,                                    0x26dcf319, 0x7533d928, 0xb155fdf5,                                    0x03563482, 0x8aba3cbb, 0x28517711,                                    0xc20ad9f8, 0xabcc5167, 0xccad925f,                                    0x4de81751, 0x3830dc8e, 0x379d5862,                                    0x9320f991, 0xea7a90c2, 0xfb3e7bce,                                    0x5121ce64, 0x774fbe32, 0xa8b6e37e,                                    0xc3293d46, 0x48de5369, 0x6413e680,                                    0xa2ae0810, 0xdd6db224, 0x69852dfd,                                    0x09072166, 0xb39a460a, 0x6445c0dd,                                    0x586cdecf, 0x1c20c8ae, 0x5bbef7dd,                                    0x1b588d40, 0xccd2017f, 0x6bb4e3bb,                                    0xdda26a7e, 0x3a59ff45, 0x3e350a44,                                    0xbcb4cdd5, 0x72eacea8, 0xfa6484bb,                                    0x8d6612ae, 0xbf3c6f47, 0xd29be463,                                    0x542f5d9e, 0xaec2771b, 0xf64e6370,                                    0x740e0d8d, 0xe75b1357, 0xf8721671,                                    0xaf537d5d, 0x4040cb08, 0x4eb4e2cc,                                    0x34d2466a, 0x0115af84, 0xe1b00428,                                    0x95983a1d, 0x06b89fb4, 0xce6ea048,                                    0x6f3f3b82, 0x3520ab82, 0x011a1d4b,                                    0x277227f8, 0x611560b1, 0xe7933fdc,                                    0xbb3a792b, 0x344525bd, 0xa08839e1,                                    0x51ce794b, 0x2f32c9b7, 0xa01fbac9,                                    0xe01cc87e, 0xbcc7d1f6, 0xcf0111c3,                                    0xa1e8aac7, 0x1a908749, 0xd44fbd9a,                                    0xd0dadecb, 0xd50ada38, 0x0339c32a,                                    0xc6913667, 0x8df9317c, 0xe0b12b4f,                                    0xf79e59b7, 0x43f5bb3a, 0xf2d519ff,                                    0x27d9459c, 0xbf97222c, 0x15e6fc2a,                                    0x0f91fc71, 0x9b941525, 0xfae59361,                                    0xceb69ceb, 0xc2a86459, 0x12baa8d1,                                    0xb6c1075e, 0xe3056a0c, 0x10d25065,                                    0xcb03a442, 0xe0ec6e0e, 0x1698db3b,                                    0x4c98a0be, 0x3278e964, 0x9f1f9532,                                    0xe0d392df, 0xd3a0342b, 0x8971f21e,                                    0x1b0a7441, 0x4ba3348c, 0xc5be7120,                                    0xc37632d8, 0xdf359f8d, 0x9b992f2e,                                    0xe60b6f47, 0x0fe3f11d, 0xe54cda54,                                    0x1edad891, 0xce6279cf, 0xcd3e7e6f,                                    0x1618b166, 0xfd2c1d05, 0x848fd2c5,                                    0xf6fb2299, 0xf523f357, 0xa6327623,                                    0x93a83531, 0x56cccd02, 0xacf08162,                                    0x5a75ebb5, 0x6e163697, 0x88d273cc,                                    0xde966292, 0x81b949d0, 0x4c50901b,                                    0x71c65614, 0xe6c6c7bd, 0x327a140a,                                    0x45e1d006, 0xc3f27b9a, 0xc9aa53fd,                                    0x62a80f00, 0xbb25bfe2, 0x35bdd2f6,                                    0x71126905, 0xb2040222, 0xb6cbcf7c,                                    0xcd769c2b, 0x53113ec0, 0x1640e3d3,                                    0x38abbd60, 0x2547adf0, 0xba38209c,                                    0xf746ce76, 0x77afa1c5, 0x20756060,                                    0x85cbfe4e, 0x8ae88dd8, 0x7aaaf9b0,                                    0x4cf9aa7e, 0x1948c25c, 0x02fb8a8c,                                    0x01c36ae4, 0xd6ebe1f9, 0x90d4f869,                                    0xa65cdea0, 0x3f09252d, 0xc208e69f,                                    0xb74e6132, 0xce77e25b, 0x578fdfe3,                                    0x3ac372e6 };  /** Cache of the self test. */  private static Boolean valid;  /**   * Test vector, as published in   * href="http://www.counterpane.com/vectors.txt">http://www.counterpane.com/vectors.txt</a>.   *   * KEY=0000000000000000   * PT=0000000000000000   * CT=4EF997456198DD78   */  private static final byte[] TV_KEY = Util.toBytesFromString("0000000000000000");  private static final byte[] TV_CT = Util.toBytesFromString("4EF997456198DD78");  // Constructors  // -----------------------------------------------------------------------  public Blowfish()  {    super(Registry.BLOWFISH_CIPHER, DEFAULT_BLOCK_SIZE, DEFAULT_KEY_SIZE);  }  // Clonable interface implementation.  // -----------------------------------------------------------------------  public Object clone()  {    Blowfish result = new Blowfish();    result.currentBlockSize = currentBlockSize;    return result;  }  // Implementations of abstract methods from BaseCipher  // -----------------------------------------------------------------------  public Iterator keySizes()  {    return new Sequence(8, MAX_KEY_LENGTH, 8).iterator();    //       return new Iterator() {    //          private int i = 0;    //          public boolean hasNext() {    //             return i <= MAX_KEY_LENGTH-8;    //          }    //          public Object next() {    //             if (hasNext()) {    //                i += 8;    //                return new Integer(i);    //             }    //             return null;    //          }    //          public void remove() {    //             throw new UnsupportedOperationException();    //          }    //       };  }  public Iterator blockSizes()  {    return Collections.singleton(new Integer(DEFAULT_BLOCK_SIZE)).iterator();  }  public Object makeKey(byte[] k, int bs)  {    Context ctx = new Context();    System.arraycopy(P, 0, ctx.p, 0, P.length);    System.arraycopy(KS0, 0, ctx.s0, 0, KS0.length);    System.arraycopy(KS1, 0, ctx.s1, 0, KS1.length);    System.arraycopy(KS2, 0, ctx.s2, 0, KS2.length);    System.arraycopy(KS3, 0, ctx.s3, 0, KS3.length);    // XOR the key with the P-box    int l = 0;    for (int i = 0; i < ctx.p.length; i++)      {        int data = 0;        for (int j = 0; j < 4; j++)          {            data = (data << 8) | (k[l++] & 0xff);            if (l >= k.length)              {                l = 0;              }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -