From 44ce054fcbc5f92db676d5bc8ecc027ceb6d0c58 Mon Sep 17 00:00:00 2001 From: Max Lv Date: Fri, 22 Feb 2013 21:23:04 +0800 Subject: [PATCH] remove openssl dependency from shadowsocks --- AndroidManifest.xml | 4 +- assets/redsocks | Bin 130276 -> 92296 bytes assets/shadowsocks | Bin 128488 -> 42312 bytes jni/Android.mk | 6 +- jni/shadowsocks/android.h | 4 + jni/shadowsocks/encrypt.c | 82 ++++---- jni/shadowsocks/encrypt.h | 30 ++- jni/shadowsocks/local.c | 19 +- jni/shadowsocks/local.h | 8 +- jni/shadowsocks/md5.c | 392 ++++++++++++++++++++++++++++++++++++++ jni/shadowsocks/md5.h | 94 +++++++++ jni/shadowsocks/rc4.c | 103 ++++++++++ jni/shadowsocks/rc4.h | 55 ++++++ pom.xml | 2 +- 14 files changed, 735 insertions(+), 64 deletions(-) create mode 100644 jni/shadowsocks/md5.c create mode 100644 jni/shadowsocks/md5.h create mode 100644 jni/shadowsocks/rc4.c create mode 100644 jni/shadowsocks/rc4.h diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 92011c89..a53442e3 100755 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -2,8 +2,8 @@ + android:versionCode="13" + android:versionName="1.3.3"> diff --git a/assets/redsocks b/assets/redsocks index 0454bf77b701663ac839e04eeb45b17a67cc3295..504d584938381c137d9e77d6671cfaffc6b82e26 100755 GIT binary patch literal 92296 zcma%k30zd=`u}@o2T?RPC!s0c0yF1TdF%<%{_hPY(7lpvrpf=Wt;ONmQ`WrbkI zVru2>qISEu-IkkOTW+g$�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%0DtEzAiXH-{9 ze`ZD^GiFs)Ul^ISG7_0NYu1J2UPgx-IG@s2Zak8Nk7UQliDu2%806JDuh6Y}Z&^Va?u9RT&a-5Di7n{g4{1 zaD>s`L`}{RO`EzwDQ=Ueg%ATiIFs2l>2ZltpMYVwHhVeQV^&Po+YwtHi{++0%2T9K zjK)RWJZp94cv$Zs^acIOD6F#K78B6ioj`{6BH!)v?&rHI8HSgom<}RFl)n)S+UA}BN&oj(lq&PWJSK@WjS0%Ry?DF)U zTF(FH3oV;ceXfF;D3>QN@O{MZ>9VPMk=&a27q56o9bO%Z-n$OOPF9BpLuH%lyG-6W zjtnr4x93mYEDu$eH(dl9+&+uby^6tw7dVq^2HbveY2Twn^xDYg<_38nT*v)9yFzP# zp(m%gdfO^hKKOhffe$3`fdoE~zy}ieKms2~-~$PKAc6ny68Q8Byw#uZ&Oz=031|H) z?*RCYIsN-Wg{8h%ZmC}aFDE=r{M5;ovVUr+`|2!p)=dQ9)4<={XzGOESV9Dx?vmKC&-5@Rkd&m!T-3fQokgO zBX6&lzaRL-@4=zo0bnb^A;cw*&*m>$>cw4_nwqrKM8bH&iJ$6SN_`OiXUV`HqqDxq z`z0PSW47cTY{VCovX2dq;g2bcg7XFPFZS|ZBu_A2e#25Pd+`+ULtgw4@z=cg5#q( zA!{$c_nX#`J-wH>Jg+66y;=GDv+@rR_bEP^6@NA>elQFFrL6dCS#i^f`MZ~XB;jW( z<9spDe#&n_sh|G=JtHh3yx&LGfZMT0Hent?K6+iaZ0_7ycEx2^T|L>Zs=Uyi$rson zGa?t-6`Y=NS{CJWOHN`i!TP(S0zp=*Iye!UQ8^<*diGTQG(;O#^6JGhqB$4voMvt) z-x_5V1jdBMTBloQ2FFgez-eFg19%rkZz4XdTzJJiPPI*yHzq3O>!B{DOHM!1? zN_{NM&mwc=%F`{Ke2ok?c*NR^)9dV{ypNy@#)b)KE;-R}RF$hb;KsDDvI{J^4wpym z42P@QyTNE}n&urP8qOLLoZa!=@Tk5SMOc5sN7hamG10xMjRX?1&iWrSnkG+h1#cmE z3n@6rEvKyEf+J%mYp|@Dk|%hw7LOYRt`vG7pWX!0vR(_GtkLzSDt@Wfqy<%~ND%#i zgvJwJAVnjh7gA3?f+KTwCc(!OA0mtcAwGrR$z`mM$5*N~zv4USH4taxpcHx^KY9^q z;Z^YRv9o~-4Y&j!zDiZVaCIt#DrK}%IlVE)R1viI@vL=}WT8I#vuWgWNy8|C2$@bPXX zKAIqS;+OQ{Tl&0_HH3F3@zV%`CqB#*C&81YK=eWI#NX*Z3Eo#I_xTfF=(&^N9mv8v z2;M>PCX(lW{C+%5hK!lC`zCmAf_L0Y19U&6U(XZ#c3=A~a>1V->noLq2T-`?LwHKo z+j_?CJ@9@Gp3s$cU&NNah#x*y6x{px{9*nzJ<(zL2;R9Ss{aa45;BDBhX~#VPyAE= ly8MGPq^T#z>YMP$_3N85v6yE&LeDDhVLNfj6{{=(Pq3r+w literal 130276 zcmbrnc|cT0);Ch4p<9utNpK5|EOrYb0W`QoaSdig zP=jEIStgHBlOZmNlZhD<^JJWCbK7JxMw3iyA`Q58Vqzm(zrS<4)oY&T{oX%5GN;cu zRds7Qb*k#rsVZl~^qB(3aqRY=f+aBGG);`90>|Crn1V6CRHk78h*Ps66kmG$8pn>8 zC?q(IbOb6N_yg0osa0NZfF|$*P#Ps59GQe~^uj>!1Qds034j=@@

hjuFuJ6h>*7 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

`QiNf73^C+&yKa7wKm6OWgU%)vdzt+ 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 WQ}svh)DVUayA^Qnsz3@1J^pX*tRqqY diff --git a/assets/shadowsocks b/assets/shadowsocks index e5dd30c35cc4b9ac4b500f197117e6e4ed578853..681179f33651399413f4cf17100c4f20b7b375ce 100755 GIT binary patch delta 14139 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 Txbcc#H{i5+FBixvWzYWu4gkBR literal 128488 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 diff --git a/jni/Android.mk b/jni/Android.mk index e767ec53..a656094d 100755 --- a/jni/Android.mk +++ b/jni/Android.mk @@ -110,10 +110,10 @@ include $(BUILD_EXECUTABLE) include $(CLEAR_VARS) LOCAL_MODULE := shadowsocks -LOCAL_SRC_FILES := shadowsocks/local.c shadowsocks/encrypt.c -LOCAL_CFLAGS := -Wall -O2 -fno-strict-aliasing -I$(LOCAL_PATH)/libev/ -I$(LOCAL_PATH)/openssl/include +LOCAL_SRC_FILES := shadowsocks/local.c shadowsocks/encrypt.c shadowsocks/rc4.c shadowsocks/md5.c +LOCAL_CFLAGS := -Wall -O2 -fno-strict-aliasing -I$(LOCAL_PATH)/libev/ -LOCAL_STATIC_LIBRARIES := libev libcrypto +LOCAL_STATIC_LIBRARIES := libev LOCAL_LDLIBS := -llog diff --git a/jni/shadowsocks/android.h b/jni/shadowsocks/android.h index e025ebfe..a054bde3 100644 --- a/jni/shadowsocks/android.h +++ b/jni/shadowsocks/android.h @@ -1,6 +1,10 @@ +#ifndef _ANDROID_H +#define _ANDROID_H + #include #define LOGD(...) ((void)__android_log_print(ANDROID_LOG_DEBUG, "shadowsocks", __VA_ARGS__)) #define LOGE(...) ((void)__android_log_print(ANDROID_LOG_ERROR, "shadowsocks", __VA_ARGS__)) #define perror(a) (LOGE("%s: %s", a, strerror(errno))) +#endif // _ANDROID_H diff --git a/jni/shadowsocks/encrypt.c b/jni/shadowsocks/encrypt.c index 6ee0b4a4..d0dcf647 100755 --- a/jni/shadowsocks/encrypt.c +++ b/jni/shadowsocks/encrypt.c @@ -1,6 +1,8 @@ #include "encrypt.h" #include "android.h" +#define OFFSET_ROL(p, o) ((u_int64_t)(*(p + o)) << (8 * o)) + static int random_compare(const void *_x, const void *_y) { uint32_t i = _i; uint64_t a = _a; @@ -9,9 +11,14 @@ static int random_compare(const void *_x, const void *_y) { return (a % (x + i) - a % (y + i)); } +static void md5(const unsigned char *text, unsigned char *digest) { + md5_state_t state; + md5_init(&state); + md5_append(&state, text, strlen((char*)text)); + md5_finish(&state, digest); +} -static void merge(uint8_t *left, int llength, uint8_t *right, int rlength) -{ +static void merge(uint8_t *left, int llength, uint8_t *right, int rlength) { /* Temporary memory locations for the 2 segments of the array to merge. */ uint8_t *ltmp = (uint8_t *) malloc(llength * sizeof(uint8_t)); uint8_t *rtmp = (uint8_t *) malloc(rlength * sizeof(uint8_t)); @@ -78,8 +85,7 @@ static void merge(uint8_t *left, int llength, uint8_t *right, int rlength) free(rtmp); } -static void mergesort(uint8_t array[], int length) -{ +static void merge_sort(uint8_t array[], int length) { /* This is the middle index and also the length of the right array. */ uint8_t middle; @@ -106,73 +112,71 @@ static void mergesort(uint8_t array[], int length) left = array; right = array + llength; - mergesort(left, llength); - mergesort(right, middle); + merge_sort(left, llength); + merge_sort(right, middle); merge(left, llength, right, middle); } -void encrypt(char *buf, int len, EVP_CIPHER_CTX *ctx) { +void encrypt(char *buf, int len, struct rc4_state *ctx) { if (ctx != NULL) { - int outlen; - unsigned char *mybuf = malloc(BUF_SIZE); - EVP_CipherUpdate(ctx, mybuf, &outlen, (unsigned char*)buf, len); - memcpy(buf, mybuf, len); - free(mybuf); + rc4_crypt(ctx, (unsigned char*) buf, (unsigned char*) buf, len); } else { char *end = buf + len; while (buf < end) { - *buf = (char)encrypt_table[(uint8_t)*buf]; + *buf = (char)enc_ctx.table.encrypt_table[(uint8_t)*buf]; buf++; } } } -void decrypt(char *buf, int len, EVP_CIPHER_CTX *ctx) { +void decrypt(char *buf, int len, struct rc4_state *ctx) { if (ctx != NULL) { - int outlen; - unsigned char *mybuf = malloc(BUF_SIZE); - EVP_CipherUpdate(ctx, mybuf, &outlen, (unsigned char*) buf, len); - memcpy(buf, mybuf, len); - free(mybuf); + rc4_crypt(ctx, (unsigned char*) buf, (unsigned char*) buf, len); } else { char *end = buf + len; while (buf < end) { - *buf = (char)decrypt_table[(uint8_t)*buf]; + *buf = (char)enc_ctx.table.decrypt_table[(uint8_t)*buf]; buf++; } } } -void enc_ctx_init(EVP_CIPHER_CTX *ctx, const char *pass, int enc) { - unsigned char key[EVP_MAX_KEY_LENGTH]; - unsigned char iv[EVP_MAX_IV_LENGTH]; - int key_len = EVP_BytesToKey(EVP_rc4(), EVP_md5(), NULL, (unsigned char*) pass, - strlen(pass), 1, key, iv); - EVP_CIPHER_CTX_init(ctx); - EVP_CipherInit_ex(ctx, EVP_rc4(), NULL, NULL, NULL, enc); - if (!EVP_CIPHER_CTX_set_key_length(ctx, key_len)) { - LOGE("Invalid key length: %d", key_len); - EVP_CIPHER_CTX_cleanup(ctx); - exit(EXIT_FAILURE); - } - EVP_CipherInit_ex(ctx, NULL, NULL, key, iv, enc); +void enc_ctx_init(struct rc4_state *ctx, int enc) { + uint8_t *key = enc_ctx.rc4.key; + int key_len = enc_ctx.rc4.key_len; + rc4_init(ctx, key, key_len); +} + +void enc_key_init(const char *pass) { + enc_ctx.rc4.key_len = 16; + enc_ctx.rc4.key = malloc(16); + md5((const unsigned char*)pass, enc_ctx.rc4.key); } void get_table(const char *pass) { - uint8_t *table = encrypt_table; - uint8_t *tmp_hash = MD5((unsigned char *) pass, strlen(pass), NULL); - _a = htole64(*(uint64_t *) tmp_hash); + uint8_t *enc_table = malloc(256); + uint8_t *dec_table = malloc(256); + uint8_t digest[16]; uint32_t i; + md5((const unsigned char*)pass, digest); + + for (i = 0; i < 8; i++) { + _a += OFFSET_ROL(digest, i); + } + for(i = 0; i < 256; ++i) { - table[i] = i; + enc_table[i] = i; } for(i = 1; i < 1024; ++i) { _i = i; - mergesort(table, 256); + merge_sort(enc_table, 256); } for(i = 0; i < 256; ++i) { // gen decrypt table from encrypt table - decrypt_table[encrypt_table[i]] = i; + dec_table[enc_table[i]] = i; } + + enc_ctx.table.encrypt_table = enc_table; + enc_ctx.table.decrypt_table = dec_table; } diff --git a/jni/shadowsocks/encrypt.h b/jni/shadowsocks/encrypt.h index a17cb6a1..1cf56f1a 100755 --- a/jni/shadowsocks/encrypt.h +++ b/jni/shadowsocks/encrypt.h @@ -1,27 +1,39 @@ -#pragma once +#ifndef _ENCRYPT_H +#define _ENCRYPT_H #include #include #include #include -#include -#include -#include + +#include "md5.h" +#include "rc4.h" #define BUF_SIZE 4096 #define TABLE 0 #define RC4 1 -unsigned char encrypt_table[256]; -unsigned char decrypt_table[256]; +union { + struct { + uint8_t *encrypt_table; + uint8_t *decrypt_table; + } table; + + struct { + unsigned char *key; + int key_len; + } rc4; +} enc_ctx; void get_table(const char* key); -void encrypt(char *buf, int len, EVP_CIPHER_CTX *ctx); -void decrypt(char *buf, int len, EVP_CIPHER_CTX *ctx); -void enc_ctx_init(EVP_CIPHER_CTX *ctx, const char *pass, int enc); +void encrypt(char *buf, int len, struct rc4_state *ctx); +void decrypt(char *buf, int len, struct rc4_state *ctx); +void enc_ctx_init(struct rc4_state *ctx, int enc); +void enc_key_init(const char *pass); unsigned int _i; unsigned long long _a; int _method; +#endif // _ENCRYPT_H diff --git a/jni/shadowsocks/local.c b/jni/shadowsocks/local.c index 6581c306..5d4a2d4a 100644 --- a/jni/shadowsocks/local.c +++ b/jni/shadowsocks/local.c @@ -462,6 +462,7 @@ void free_remote(struct remote *remote) { free(remote); } } + void close_and_free_remote(EV_P_ struct remote *remote) { if (remote != NULL) { ev_timer_stop(EV_A_ &remote->send_ctx->watcher); @@ -471,6 +472,7 @@ void close_and_free_remote(EV_P_ struct remote *remote) { free_remote(remote); } } + struct server* new_server(int fd) { struct server *server; server = malloc(sizeof(struct server)); @@ -485,10 +487,10 @@ struct server* new_server(int fd) { server->send_ctx->connected = 0; server->stage = 0; if (_method == RC4) { - server->e_ctx = malloc(sizeof(EVP_CIPHER_CTX)); - server->d_ctx = malloc(sizeof(EVP_CIPHER_CTX)); - enc_ctx_init(server->e_ctx, _key, 1); - enc_ctx_init(server->d_ctx, _key, 0); + server->e_ctx = malloc(sizeof(struct rc4_state)); + server->d_ctx = malloc(sizeof(struct rc4_state)); + enc_ctx_init(server->e_ctx, 1); + enc_ctx_init(server->d_ctx, 0); } else { server->e_ctx = NULL; server->d_ctx = NULL; @@ -496,14 +498,13 @@ struct server* new_server(int fd) { server->buf_len = 0; return server; } + void free_server(struct server *server) { if (server != NULL) { if (server->remote != NULL) { server->remote->server = NULL; } if (_method == RC4) { - EVP_CIPHER_CTX_cleanup(server->e_ctx); - EVP_CIPHER_CTX_cleanup(server->d_ctx); free(server->e_ctx); free(server->d_ctx); } @@ -512,6 +513,7 @@ void free_server(struct server *server) { free(server); } } + void close_and_free_server(EV_P_ struct server *server) { if (server != NULL) { ev_io_stop(EV_A_ &server->send_ctx->io); @@ -520,6 +522,7 @@ void close_and_free_server(EV_P_ struct server *server) { free_server(server); } } + static void accept_cb (EV_P_ ev_io *w, int revents) { struct listen_ctx *listener = (struct listen_ctx *)w; @@ -685,7 +688,9 @@ int main (int argc, char **argv) } LOGD("calculating ciphers %d", _method); - if (_method != RC4) { + if (_method == RC4) { + enc_key_init(key); + } else { get_table(key); } diff --git a/jni/shadowsocks/local.h b/jni/shadowsocks/local.h index b2aed3bc..3d812b4a 100644 --- a/jni/shadowsocks/local.h +++ b/jni/shadowsocks/local.h @@ -1,4 +1,5 @@ -#pragma once +#ifndef _LOCAL_H +#define _LOCAL_H #include @@ -21,8 +22,8 @@ struct server { char buf[BUF_SIZE]; // server send from, remote recv into char stage; int buf_len; - EVP_CIPHER_CTX *e_ctx; - EVP_CIPHER_CTX *d_ctx; + struct rc4_state *e_ctx; + struct rc4_state *d_ctx; struct server_ctx *recv_ctx; struct server_ctx *send_ctx; struct remote *remote; @@ -57,3 +58,4 @@ struct server* new_server(int fd); void free_server(struct server *server); void close_and_free_server(EV_P_ struct server *server); +#endif // _LOCAL_H diff --git a/jni/shadowsocks/md5.c b/jni/shadowsocks/md5.c new file mode 100644 index 00000000..f5e7f433 --- /dev/null +++ b/jni/shadowsocks/md5.c @@ -0,0 +1,392 @@ +/* + Copyright (C) 1999 Aladdin Enterprises. All rights reserved. + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + L. Peter Deutsch + ghost@aladdin.com + + */ +/*$Id: md5.c,v 1.1.1.1 2001/10/18 22:50:24 jlovell Exp $ */ +/* + Independent implementation of MD5 (RFC 1321). + + This code implements the MD5 Algorithm defined in RFC 1321. + It is derived directly from the text of the RFC and not from the + reference implementation. + + The original and principal author of md5.c is L. Peter Deutsch + . Other authors are noted in the change history + that follows (in reverse chronological order): + + 1999-11-04 lpd Edited comments slightly for automatic TOC extraction. + 1999-10-18 lpd Fixed typo in header comment (ansi2knr rather than md5). + 1999-05-03 lpd Original version. + */ + +#include "md5.h" +#include "string.h" + +#ifdef TEST +/* + * Compile with -DTEST to create a self-contained executable test program. + * The test program should print out the same values as given in section + * A.5 of RFC 1321, reproduced below. + */ +main() +{ + static const char *const test[7] = { + "", /*d41d8cd98f00b204e9800998ecf8427e*/ + "a", /*0cc175b9c0f1b6a831c399e269772661*/ + "abc", /*900150983cd24fb0d6963f7d28e17f72*/ + "message digest", /*f96b697d7cb7938d525a2f31aaf161d0*/ + "abcdefghijklmnopqrstuvwxyz", /*c3fcd3d76192e4007dfb496cca67e13b*/ + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", + /*d174ab98d277d9f5a5611c2c9f419d9f*/ + "12345678901234567890123456789012345678901234567890123456789012345678901234567890" /*57edf4a22be3c955ac49da2e2107b67a*/ + }; + int i; + + for (i = 0; i < 7; ++i) { + md5_state_t state; + md5_byte_t digest[16]; + int di; + + md5_init(&state); + md5_append(&state, (const md5_byte_t *)test[i], strlen(test[i])); + md5_finish(&state, digest); + printf("MD5 (\"%s\") = ", test[i]); + for (di = 0; di < 16; ++di) + printf("%02x", digest[di]); + printf("\n"); + } + return 0; +} +#endif /* TEST */ + + +/* + * For reference, here is the program that computed the T values. + */ +#if 0 +#include +main() +{ + int i; + for (i = 1; i <= 64; ++i) { + unsigned long v = (unsigned long)(4294967296.0 * fabs(sin((double)i))); + printf("#define T%d 0x%08lx\n", i, v); + } + return 0; +} +#endif +/* + * End of T computation program. + */ +#define T1 0xd76aa478 +#define T2 0xe8c7b756 +#define T3 0x242070db +#define T4 0xc1bdceee +#define T5 0xf57c0faf +#define T6 0x4787c62a +#define T7 0xa8304613 +#define T8 0xfd469501 +#define T9 0x698098d8 +#define T10 0x8b44f7af +#define T11 0xffff5bb1 +#define T12 0x895cd7be +#define T13 0x6b901122 +#define T14 0xfd987193 +#define T15 0xa679438e +#define T16 0x49b40821 +#define T17 0xf61e2562 +#define T18 0xc040b340 +#define T19 0x265e5a51 +#define T20 0xe9b6c7aa +#define T21 0xd62f105d +#define T22 0x02441453 +#define T23 0xd8a1e681 +#define T24 0xe7d3fbc8 +#define T25 0x21e1cde6 +#define T26 0xc33707d6 +#define T27 0xf4d50d87 +#define T28 0x455a14ed +#define T29 0xa9e3e905 +#define T30 0xfcefa3f8 +#define T31 0x676f02d9 +#define T32 0x8d2a4c8a +#define T33 0xfffa3942 +#define T34 0x8771f681 +#define T35 0x6d9d6122 +#define T36 0xfde5380c +#define T37 0xa4beea44 +#define T38 0x4bdecfa9 +#define T39 0xf6bb4b60 +#define T40 0xbebfbc70 +#define T41 0x289b7ec6 +#define T42 0xeaa127fa +#define T43 0xd4ef3085 +#define T44 0x04881d05 +#define T45 0xd9d4d039 +#define T46 0xe6db99e5 +#define T47 0x1fa27cf8 +#define T48 0xc4ac5665 +#define T49 0xf4292244 +#define T50 0x432aff97 +#define T51 0xab9423a7 +#define T52 0xfc93a039 +#define T53 0x655b59c3 +#define T54 0x8f0ccc92 +#define T55 0xffeff47d +#define T56 0x85845dd1 +#define T57 0x6fa87e4f +#define T58 0xfe2ce6e0 +#define T59 0xa3014314 +#define T60 0x4e0811a1 +#define T61 0xf7537e82 +#define T62 0xbd3af235 +#define T63 0x2ad7d2bb +#define T64 0xeb86d391 + +static void +md5_process(md5_state_t *pms, const md5_byte_t *data /*[64]*/) +{ + md5_word_t + a = pms->abcd[0], b = pms->abcd[1], + c = pms->abcd[2], d = pms->abcd[3]; + md5_word_t t; + +#ifndef ARCH_IS_BIG_ENDIAN +# define ARCH_IS_BIG_ENDIAN 1 /* slower, default implementation */ +#endif +#if ARCH_IS_BIG_ENDIAN + + /* + * On big-endian machines, we must arrange the bytes in the right + * order. (This also works on machines of unknown byte order.) + */ + md5_word_t X[16]; + const md5_byte_t *xp = data; + int i; + + for (i = 0; i < 16; ++i, xp += 4) + X[i] = xp[0] + (xp[1] << 8) + (xp[2] << 16) + (xp[3] << 24); + +#else /* !ARCH_IS_BIG_ENDIAN */ + + /* + * On little-endian machines, we can process properly aligned data + * without copying it. + */ + md5_word_t xbuf[16]; + const md5_word_t *X; + + if (!((data - (const md5_byte_t *)0) & 3)) { + /* data are properly aligned */ + X = (const md5_word_t *)data; + } else { + /* not aligned */ + memcpy(xbuf, data, 64); + X = xbuf; + } +#endif + +#define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32 - (n)))) + + /* Round 1. */ + /* Let [abcd k s i] denote the operation + a = b + ((a + F(b,c,d) + X[k] + T[i]) <<< s). */ +#define F(x, y, z) (((x) & (y)) | (~(x) & (z))) +#define SET(a, b, c, d, k, s, Ti)\ + t = a + F(b,c,d) + X[k] + Ti;\ + a = ROTATE_LEFT(t, s) + b + /* Do the following 16 operations. */ + SET(a, b, c, d, 0, 7, T1); + SET(d, a, b, c, 1, 12, T2); + SET(c, d, a, b, 2, 17, T3); + SET(b, c, d, a, 3, 22, T4); + SET(a, b, c, d, 4, 7, T5); + SET(d, a, b, c, 5, 12, T6); + SET(c, d, a, b, 6, 17, T7); + SET(b, c, d, a, 7, 22, T8); + SET(a, b, c, d, 8, 7, T9); + SET(d, a, b, c, 9, 12, T10); + SET(c, d, a, b, 10, 17, T11); + SET(b, c, d, a, 11, 22, T12); + SET(a, b, c, d, 12, 7, T13); + SET(d, a, b, c, 13, 12, T14); + SET(c, d, a, b, 14, 17, T15); + SET(b, c, d, a, 15, 22, T16); +#undef SET + + /* Round 2. */ + /* Let [abcd k s i] denote the operation + a = b + ((a + G(b,c,d) + X[k] + T[i]) <<< s). */ +#define G(x, y, z) (((x) & (z)) | ((y) & ~(z))) +#define SET(a, b, c, d, k, s, Ti)\ + t = a + G(b,c,d) + X[k] + Ti;\ + a = ROTATE_LEFT(t, s) + b + /* Do the following 16 operations. */ + SET(a, b, c, d, 1, 5, T17); + SET(d, a, b, c, 6, 9, T18); + SET(c, d, a, b, 11, 14, T19); + SET(b, c, d, a, 0, 20, T20); + SET(a, b, c, d, 5, 5, T21); + SET(d, a, b, c, 10, 9, T22); + SET(c, d, a, b, 15, 14, T23); + SET(b, c, d, a, 4, 20, T24); + SET(a, b, c, d, 9, 5, T25); + SET(d, a, b, c, 14, 9, T26); + SET(c, d, a, b, 3, 14, T27); + SET(b, c, d, a, 8, 20, T28); + SET(a, b, c, d, 13, 5, T29); + SET(d, a, b, c, 2, 9, T30); + SET(c, d, a, b, 7, 14, T31); + SET(b, c, d, a, 12, 20, T32); +#undef SET + + /* Round 3. */ + /* Let [abcd k s t] denote the operation + a = b + ((a + H(b,c,d) + X[k] + T[i]) <<< s). */ +#define H(x, y, z) ((x) ^ (y) ^ (z)) +#define SET(a, b, c, d, k, s, Ti)\ + t = a + H(b,c,d) + X[k] + Ti;\ + a = ROTATE_LEFT(t, s) + b + /* Do the following 16 operations. */ + SET(a, b, c, d, 5, 4, T33); + SET(d, a, b, c, 8, 11, T34); + SET(c, d, a, b, 11, 16, T35); + SET(b, c, d, a, 14, 23, T36); + SET(a, b, c, d, 1, 4, T37); + SET(d, a, b, c, 4, 11, T38); + SET(c, d, a, b, 7, 16, T39); + SET(b, c, d, a, 10, 23, T40); + SET(a, b, c, d, 13, 4, T41); + SET(d, a, b, c, 0, 11, T42); + SET(c, d, a, b, 3, 16, T43); + SET(b, c, d, a, 6, 23, T44); + SET(a, b, c, d, 9, 4, T45); + SET(d, a, b, c, 12, 11, T46); + SET(c, d, a, b, 15, 16, T47); + SET(b, c, d, a, 2, 23, T48); +#undef SET + + /* Round 4. */ + /* Let [abcd k s t] denote the operation + a = b + ((a + I(b,c,d) + X[k] + T[i]) <<< s). */ +#define I(x, y, z) ((y) ^ ((x) | ~(z))) +#define SET(a, b, c, d, k, s, Ti)\ + t = a + I(b,c,d) + X[k] + Ti;\ + a = ROTATE_LEFT(t, s) + b + /* Do the following 16 operations. */ + SET(a, b, c, d, 0, 6, T49); + SET(d, a, b, c, 7, 10, T50); + SET(c, d, a, b, 14, 15, T51); + SET(b, c, d, a, 5, 21, T52); + SET(a, b, c, d, 12, 6, T53); + SET(d, a, b, c, 3, 10, T54); + SET(c, d, a, b, 10, 15, T55); + SET(b, c, d, a, 1, 21, T56); + SET(a, b, c, d, 8, 6, T57); + SET(d, a, b, c, 15, 10, T58); + SET(c, d, a, b, 6, 15, T59); + SET(b, c, d, a, 13, 21, T60); + SET(a, b, c, d, 4, 6, T61); + SET(d, a, b, c, 11, 10, T62); + SET(c, d, a, b, 2, 15, T63); + SET(b, c, d, a, 9, 21, T64); +#undef SET + + /* Then perform the following additions. (That is increment each + of the four registers by the value it had before this block + was started.) */ + pms->abcd[0] += a; + pms->abcd[1] += b; + pms->abcd[2] += c; + pms->abcd[3] += d; +} + +void +md5_init(md5_state_t *pms) +{ + pms->count[0] = pms->count[1] = 0; + pms->abcd[0] = 0x67452301; + pms->abcd[1] = 0xefcdab89; + pms->abcd[2] = 0x98badcfe; + pms->abcd[3] = 0x10325476; +} + +void +md5_append(md5_state_t *pms, const md5_byte_t *data, int nbytes) +{ + const md5_byte_t *p = data; + int left = nbytes; + int offset = (pms->count[0] >> 3) & 63; + md5_word_t nbits = (md5_word_t)(nbytes << 3); + + if (nbytes <= 0) + return; + + /* Update the message length. */ + pms->count[1] += nbytes >> 29; + pms->count[0] += nbits; + if (pms->count[0] < nbits) + pms->count[1]++; + + /* Process an initial partial block. */ + if (offset) { + int copy = (offset + nbytes > 64 ? 64 - offset : nbytes); + + memcpy(pms->buf + offset, p, copy); + if (offset + copy < 64) + return; + p += copy; + left -= copy; + md5_process(pms, pms->buf); + } + + /* Process full blocks. */ + for (; left >= 64; p += 64, left -= 64) + md5_process(pms, p); + + /* Process a final partial block. */ + if (left) + memcpy(pms->buf, p, left); +} + +void +md5_finish(md5_state_t *pms, md5_byte_t digest[16]) +{ + static const md5_byte_t pad[64] = { + 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + }; + md5_byte_t data[8]; + int i; + + /* Save the length before padding. */ + for (i = 0; i < 8; ++i) + data[i] = (md5_byte_t)(pms->count[i >> 2] >> ((i & 3) << 3)); + /* Pad to 56 bytes mod 64. */ + md5_append(pms, pad, ((55 - (pms->count[0] >> 3)) & 63) + 1); + /* Append the length. */ + md5_append(pms, data, 8); + for (i = 0; i < 16; ++i) + digest[i] = (md5_byte_t)(pms->abcd[i >> 2] >> ((i & 3) << 3)); +} diff --git a/jni/shadowsocks/md5.h b/jni/shadowsocks/md5.h new file mode 100644 index 00000000..22e96d05 --- /dev/null +++ b/jni/shadowsocks/md5.h @@ -0,0 +1,94 @@ +/* + Copyright (C) 1999 Aladdin Enterprises. All rights reserved. + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + L. Peter Deutsch + ghost@aladdin.com + + */ +/*$Id: md5.h,v 1.1.1.1 2001/10/18 22:50:24 jlovell Exp $ */ +/* + Independent implementation of MD5 (RFC 1321). + + This code implements the MD5 Algorithm defined in RFC 1321. + It is derived directly from the text of the RFC and not from the + reference implementation. + + The original and principal author of md5.h is L. Peter Deutsch + . Other authors are noted in the change history + that follows (in reverse chronological order): + + 1999-11-04 lpd Edited comments slightly for automatic TOC extraction. + 1999-10-18 lpd Fixed typo in header comment (ansi2knr rather than md5); + added conditionalization for C++ compilation from Martin + Purschke . + 1999-05-03 lpd Original version. + */ + +#ifndef md5_INCLUDED +# define md5_INCLUDED + +/* + * This code has some adaptations for the Ghostscript environment, but it + * will compile and run correctly in any environment with 8-bit chars and + * 32-bit ints. Specifically, it assumes that if the following are + * defined, they have the same meaning as in Ghostscript: P1, P2, P3, + * ARCH_IS_BIG_ENDIAN. + */ + +typedef unsigned char md5_byte_t; /* 8-bit byte */ +typedef unsigned int md5_word_t; /* 32-bit word */ + +/* Define the state of the MD5 Algorithm. */ +typedef struct md5_state_s { + md5_word_t count[2]; /* message length in bits, lsw first */ + md5_word_t abcd[4]; /* digest buffer */ + md5_byte_t buf[64]; /* accumulate block */ +} md5_state_t; + +#ifdef __cplusplus +extern "C" +{ +#endif + +/* Initialize the algorithm. */ +#ifdef P1 +void md5_init(P1(md5_state_t *pms)); +#else +void md5_init(md5_state_t *pms); +#endif + +/* Append a string to the message. */ +#ifdef P3 +void md5_append(P3(md5_state_t *pms, const md5_byte_t *data, int nbytes)); +#else +void md5_append(md5_state_t *pms, const md5_byte_t *data, int nbytes); +#endif + +/* Finish the message and return the digest. */ +#ifdef P2 +void md5_finish(P2(md5_state_t *pms, md5_byte_t digest[16])); +#else +void md5_finish(md5_state_t *pms, md5_byte_t digest[16]); +#endif + +#ifdef __cplusplus +} /* end extern "C" */ +#endif + +#endif /* md5_INCLUDED */ diff --git a/jni/shadowsocks/rc4.c b/jni/shadowsocks/rc4.c new file mode 100644 index 00000000..1759d1fe --- /dev/null +++ b/jni/shadowsocks/rc4.c @@ -0,0 +1,103 @@ + +/* + * rc4.c + * + * Copyright (c) 1996-2000 Whistle Communications, Inc. + * All rights reserved. + * + * Subject to the following obligations and disclaimer of warranty, use and + * redistribution of this software, in source or object code forms, with or + * without modifications are expressly permitted by Whistle Communications; + * provided, however, that: + * 1. Any and all reproductions of the source or object code must include the + * copyright notice above and the following disclaimer of warranties; and + * 2. No rights are granted, in any manner or form, to use Whistle + * Communications, Inc. trademarks, including the mark "WHISTLE + * COMMUNICATIONS" on advertising, endorsements, or otherwise except as + * such appears in the above copyright notice or in the software. + * + * THIS SOFTWARE IS BEING PROVIDED BY WHISTLE COMMUNICATIONS "AS IS", AND + * TO THE MAXIMUM EXTENT PERMITTED BY LAW, WHISTLE COMMUNICATIONS MAKES NO + * REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, REGARDING THIS SOFTWARE, + * INCLUDING WITHOUT LIMITATION, ANY AND ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. + * WHISTLE COMMUNICATIONS DOES NOT WARRANT, GUARANTEE, OR MAKE ANY + * REPRESENTATIONS REGARDING THE USE OF, OR THE RESULTS OF THE USE OF THIS + * SOFTWARE IN TERMS OF ITS CORRECTNESS, ACCURACY, RELIABILITY OR OTHERWISE. + * IN NO EVENT SHALL WHISTLE COMMUNICATIONS BE LIABLE FOR ANY DAMAGES + * RESULTING FROM OR ARISING OUT OF ANY USE OF THIS SOFTWARE, INCLUDING + * WITHOUT LIMITATION, ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, + * PUNITIVE, OR CONSEQUENTIAL DAMAGES, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES, LOSS OF USE, DATA OR PROFITS, HOWEVER CAUSED AND UNDER ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF WHISTLE COMMUNICATIONS IS ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * $FreeBSD: src/sys/crypto/rc4/rc4.c,v 1.2.2.1 2000/04/18 04:48:31 archie Exp $ + */ +#include +#include "rc4.h" + +static inline void +swap_bytes(u_char *a, u_char *b) +{ + u_char temp; + + temp = *a; + *a = *b; + *b = temp; +} + +/* + * Initialize an RC4 state buffer using the supplied key, + * which can have arbitrary length. + */ +void +rc4_init(struct rc4_state *const state, const u_char *key, int keylen) +{ + u_char j; + int i; + + /* Initialize state with identity permutation */ + for (i = 0; i < 256; i++) + state->perm[i] = (u_char)i; + state->index1 = 0; + state->index2 = 0; + + /* Randomize the permutation using key data */ + for (j = i = 0; i < 256; i++) { + j += state->perm[i] + key[i % keylen]; + swap_bytes(&state->perm[i], &state->perm[j]); + } +} + +/* + * Encrypt some data using the supplied RC4 state buffer. + * The input and output buffers may be the same buffer. + * Since RC4 is a stream cypher, this function is used + * for both encryption and decryption. + */ +void +rc4_crypt(struct rc4_state *const state, + const u_char *inbuf, u_char *outbuf, int buflen) +{ + int i; + u_char j; + + for (i = 0; i < buflen; i++) { + + /* Update modification indicies */ + state->index1++; + state->index2 += state->perm[state->index1]; + + /* Modify permutation */ + swap_bytes(&state->perm[state->index1], + &state->perm[state->index2]); + + /* Encrypt/decrypt next byte */ + j = state->perm[state->index1] + state->perm[state->index2]; + outbuf[i] = inbuf[i] ^ state->perm[j]; + } +} + diff --git a/jni/shadowsocks/rc4.h b/jni/shadowsocks/rc4.h new file mode 100644 index 00000000..40c6b46e --- /dev/null +++ b/jni/shadowsocks/rc4.h @@ -0,0 +1,55 @@ +/* + * rc4.h + * + * Copyright (c) 1996-2000 Whistle Communications, Inc. + * All rights reserved. + * + * Subject to the following obligations and disclaimer of warranty, use and + * redistribution of this software, in source or object code forms, with or + * without modifications are expressly permitted by Whistle Communications; + * provided, however, that: + * 1. Any and all reproductions of the source or object code must include the + * copyright notice above and the following disclaimer of warranties; and + * 2. No rights are granted, in any manner or form, to use Whistle + * Communications, Inc. trademarks, including the mark "WHISTLE + * COMMUNICATIONS" on advertising, endorsements, or otherwise except as + * such appears in the above copyright notice or in the software. + * + * THIS SOFTWARE IS BEING PROVIDED BY WHISTLE COMMUNICATIONS "AS IS", AND + * TO THE MAXIMUM EXTENT PERMITTED BY LAW, WHISTLE COMMUNICATIONS MAKES NO + * REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, REGARDING THIS SOFTWARE, + * INCLUDING WITHOUT LIMITATION, ANY AND ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. + * WHISTLE COMMUNICATIONS DOES NOT WARRANT, GUARANTEE, OR MAKE ANY + * REPRESENTATIONS REGARDING THE USE OF, OR THE RESULTS OF THE USE OF THIS + * SOFTWARE IN TERMS OF ITS CORRECTNESS, ACCURACY, RELIABILITY OR OTHERWISE. + * IN NO EVENT SHALL WHISTLE COMMUNICATIONS BE LIABLE FOR ANY DAMAGES + * RESULTING FROM OR ARISING OUT OF ANY USE OF THIS SOFTWARE, INCLUDING + * WITHOUT LIMITATION, ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, + * PUNITIVE, OR CONSEQUENTIAL DAMAGES, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES, LOSS OF USE, DATA OR PROFITS, HOWEVER CAUSED AND UNDER ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF WHISTLE COMMUNICATIONS IS ADVISED OF THE POSSIBILITY + * OF SUCH DAMAGE. + * + * $FreeBSD: src/sys/crypto/rc4/rc4.h,v 1.2.2.1 2000/04/18 04:48:32 archie Exp $ + */ + +#ifndef RC4_H_ +#define RC4_H_ + +typedef uint8_t u_char; + +struct rc4_state { + u_char perm[256]; + u_char index1; + u_char index2; +}; + +void rc4_init(struct rc4_state *state, const u_char *key, int keylen); +void rc4_crypt(struct rc4_state *state, + const u_char *inbuf, u_char *outbuf, int buflen); + +#endif + diff --git a/pom.xml b/pom.xml index 8091a39d..b359ea5f 100755 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 com.github.shadowsocks shadowsocks - 1.3.2 + 1.3.3 apk Shadowsocks