提交 3ab56511 编写于 作者: R Richard Levitte

The experimental Rijndael code moved to the main trunk.

make update done.
上级 82ce0b23
......@@ -26,6 +26,9 @@
this case.
[Steve Henson]
*) Added the beginnings of Rijndael support.
[Ben Laurie]
*) Fix for bug in DirectoryString mask setting. Add support for
X509_NAME_print_ex() in 'req' and X509_print_ex() function
to allow certificate printing to more controllable, additional
......
......@@ -161,7 +161,7 @@ SHLIBDIRS= crypto ssl
SDIRS= \
md2 md4 md5 sha mdc2 hmac ripemd \
des rc2 rc4 rc5 idea bf cast \
bn rsa dsa dh dso \
bn rsa dsa dh dso rijndael \
buffer bio stack lhash rand err objects \
evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp
......
此差异已折叠。
......@@ -308,6 +308,11 @@ bad:
LN_rc5_cfb64, LN_rc5_ofb64);
BIO_printf(bio_err," -%-4s (%s)\n","rc5", LN_rc5_cbc);
#endif
#ifndef NO_RIJNDAEL
BIO_printf(bio_err," -%-12s -%-12s -%-12s -%-12s\n",
LN_rijndael_ecb_k128_b128,"","","","");
#endif
goto end;
}
argc--;
......
......@@ -29,7 +29,7 @@ SDIRS= md2 md5 sha mdc2 hmac ripemd \
des rc2 rc4 rc5 idea bf cast \
bn rsa dsa dh dso \
buffer bio stack lhash rand err objects \
evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp
evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp rijndael
GENERAL=Makefile README crypto-lib.com install.com
......
此差异已折叠。
......@@ -123,7 +123,8 @@ bf_buff.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
bf_buff.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
bf_buff.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
bf_buff.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
bf_buff.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
bf_buff.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
bf_buff.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
bf_buff.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
bf_buff.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
bf_buff.o: ../../include/openssl/symhacks.h ../cryptlib.h
......@@ -141,10 +142,11 @@ bf_nbio.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
bf_nbio.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
bf_nbio.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
bf_nbio.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
bf_nbio.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
bf_nbio.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
bf_nbio.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
bf_nbio.o: ../cryptlib.h
bf_nbio.o: ../../include/openssl/rijndael-alg-fst.h
bf_nbio.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
bf_nbio.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
bf_nbio.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
bf_nbio.o: ../../include/openssl/symhacks.h ../cryptlib.h
bf_null.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
bf_null.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
bf_null.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -158,7 +160,8 @@ bf_null.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
bf_null.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
bf_null.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
bf_null.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
bf_null.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
bf_null.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
bf_null.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
bf_null.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
bf_null.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
bf_null.o: ../../include/openssl/symhacks.h ../cryptlib.h
......
......@@ -102,7 +102,8 @@ err_all.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
err_all.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs12.h
err_all.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
err_all.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
err_all.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
err_all.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
err_all.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
err_all.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
err_all.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
err_all.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......
此差异已折叠。
......@@ -64,6 +64,8 @@
void OpenSSL_add_all_ciphers(void)
{
int i,j;
#ifndef NO_DES
EVP_add_cipher(EVP_des_cfb());
EVP_add_cipher(EVP_des_ede_cfb());
......@@ -144,6 +146,12 @@ void OpenSSL_add_all_ciphers(void)
EVP_add_cipher_alias(SN_rc5_cbc,"rc5");
EVP_add_cipher_alias(SN_rc5_cbc,"RC5");
#endif
#ifndef NO_RIJNDAEL
for(i=0 ; i < 3 ; ++i)
for(j=0 ; j < 3 ; ++j)
EVP_add_cipher(EVP_rijndael_ecb(i,j));
#endif
PKCS12_PBE_add();
PKCS5_PBE_add();
}
/* ====================================================================
* Copyright (c) 2000 The OpenSSL Project. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. All advertising materials mentioning features or use of this
* software must display the following acknowledgment:
* "This product includes software developed by the OpenSSL Project
* for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
*
* 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
* endorse or promote products derived from this software without
* prior written permission. For written permission, please contact
* openssl-core@openssl.org.
*
* 5. Products derived from this software may not be called "OpenSSL"
* nor may "OpenSSL" appear in their names without prior written
* permission of the OpenSSL Project.
*
* 6. Redistributions of any form whatsoever must retain the following
* acknowledgment:
* "This product includes software developed by the OpenSSL Project
* for use in the OpenSSL Toolkit (http://www.openssl.org/)"
*
* THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
* EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON 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 ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
* ====================================================================
*
*/
#include <openssl/evp.h>
#include <openssl/err.h>
#include <memory.h>
#include <assert.h>
static EVP_CIPHER rd_cipher[3][3];
static anSizes[]={16,24,32};
static anNIDs[3][3]=
{
{ NID_rijndael_ecb_k128_b128,NID_rijndael_ecb_k192_b128,NID_rijndael_ecb_k256_b128 },
{ NID_rijndael_ecb_k128_b192,NID_rijndael_ecb_k192_b192,NID_rijndael_ecb_k256_b192 },
{ NID_rijndael_ecb_k128_b256,NID_rijndael_ecb_k192_b256,NID_rijndael_ecb_k256_b256 }
};
static int rd_init_ecb(EVP_CIPHER_CTX *ctx, const unsigned char *key,
const unsigned char *iv, int enc)
{
RIJNDAEL_KEY *k=&ctx->c.rijndael;
k->enc=enc;
k->rounds=ctx->cipher->key_len/4+6;
rijndaelKeySched((const word8 (*)[4])key,k->keySched,k->rounds);
if(!k->enc)
rijndaelKeyEncToDec(k->keySched,k->rounds);
memcpy(k->iv,iv,ctx->cipher->iv_len);
return 1;
}
static int rd_cipher_ecb(EVP_CIPHER_CTX *ctx, unsigned char *out,
const unsigned char *in, unsigned int inl)
{
while(inl > 0)
{
if(ctx->c.rijndael.enc)
rijndaelEncrypt(in,out,ctx->c.rijndael.keySched,
ctx->c.rijndael.rounds);
else
rijndaelDecrypt(in,out,ctx->c.rijndael.keySched,
ctx->c.rijndael.rounds);
inl-=16;
in+=16;
out+=16;
}
assert(inl == 0);
return 1;
}
EVP_CIPHER *EVP_rijndael_ecb(int nBlockLength,int nKeyLength)
{
EVP_CIPHER *c;
if(nBlockLength < 0 || nBlockLength > 2)
{
EVPerr(EVP_F_EVP_RIJNDAEL,EVP_R_BAD_BLOCK_LENGTH);
return NULL;
}
if(nKeyLength < 0 || nKeyLength > 2)
{
EVPerr(EVP_F_EVP_RIJNDAEL,EVP_R_BAD_KEY_LENGTH);
return NULL;
}
c=&rd_cipher[nKeyLength][nBlockLength];
memset(c,'\0',sizeof *c);
c->nid=anNIDs[nBlockLength][nKeyLength];
c->block_size=anSizes[nBlockLength];
c->key_len=anSizes[nKeyLength];
c->iv_len=16;
c->flags=EVP_CIPH_ECB_MODE;
c->init=rd_init_ecb;
c->do_cipher=rd_cipher_ecb;
c->ctx_size=sizeof(EVP_CIPHER_CTX)-sizeof((((EVP_CIPHER_CTX *)NULL)->c))+
sizeof((((EVP_CIPHER_CTX *)NULL)->c.rijndael));
return c;
}
......@@ -109,6 +109,9 @@
#ifndef NO_MDC2
#include <openssl/mdc2.h>
#endif
#ifndef NO_RIJNDAEL
#include <openssl/rijndael.h>
#endif
#define EVP_RC2_KEY_SIZE 16
#define EVP_RC4_KEY_SIZE 16
......@@ -116,8 +119,8 @@
#define EVP_CAST5_KEY_SIZE 16
#define EVP_RC5_32_12_16_KEY_SIZE 16
#define EVP_MAX_MD_SIZE (16+20) /* The SSLv3 md5+sha1 type */
#define EVP_MAX_KEY_LENGTH 24
#define EVP_MAX_IV_LENGTH 8
#define EVP_MAX_KEY_LENGTH 32
#define EVP_MAX_IV_LENGTH 16
#define PKCS5_SALT_LEN 8
/* Default PKCS#5 iteration count */
......@@ -398,7 +401,8 @@ struct evp_cipher_ctx_st
void *app_data; /* application stuff */
int key_len; /* May change for variable length cipher */
union {
union
{
#ifndef NO_RC4
struct
{
......@@ -425,22 +429,27 @@ struct evp_cipher_ctx_st
IDEA_KEY_SCHEDULE idea_ks;/* key schedule */
#endif
#ifndef NO_RC2
struct {
struct
{
int key_bits; /* effective key bits */
RC2_KEY ks;/* key schedule */
} rc2;
} rc2;
#endif
#ifndef NO_RC5
struct {
struct
{
int rounds; /* number of rounds */
RC5_32_KEY ks;/* key schedule */
} rc5;
} rc5;
#endif
#ifndef NO_BF
BF_KEY bf_ks;/* key schedule */
#endif
#ifndef NO_CAST
CAST_KEY cast_ks;/* key schedule */
#endif
#ifndef NO_RIJNDAEL
RIJNDAEL_KEY rijndael;
#endif
} c;
};
......@@ -693,6 +702,10 @@ EVP_CIPHER *EVP_rc5_32_12_16_ecb(void);
EVP_CIPHER *EVP_rc5_32_12_16_cfb(void);
EVP_CIPHER *EVP_rc5_32_12_16_ofb(void);
#endif
#ifndef NO_RIJNDAEL
EVP_CIPHER *EVP_rijndael_ecb(int nBlockLength,int nKeyLength);
#endif
void OpenSSL_add_all_algorithms(void);
void OpenSSL_add_all_ciphers(void);
void OpenSSL_add_all_digests(void);
......@@ -800,6 +813,7 @@ void EVP_PBE_cleanup(void);
#define EVP_F_EVP_PKEY_GET1_DSA 120
#define EVP_F_EVP_PKEY_GET1_RSA 121
#define EVP_F_EVP_PKEY_NEW 106
#define EVP_F_EVP_RIJNDAEL 126
#define EVP_F_EVP_SIGNFINAL 107
#define EVP_F_EVP_VERIFYFINAL 108
#define EVP_F_PKCS5_PBE_KEYIVGEN 117
......@@ -808,7 +822,9 @@ void EVP_PBE_cleanup(void);
#define EVP_F_RC5_CTRL 125
/* Reason codes. */
#define EVP_R_BAD_BLOCK_LENGTH 136
#define EVP_R_BAD_DECRYPT 100
#define EVP_R_BAD_KEY_LENGTH 137
#define EVP_R_BN_DECODE_ERROR 112
#define EVP_R_BN_PUBKEY_ERROR 113
#define EVP_R_CIPHER_PARAMETER_ERROR 122
......
......@@ -85,6 +85,7 @@ static ERR_STRING_DATA EVP_str_functs[]=
{ERR_PACK(0,EVP_F_EVP_PKEY_GET1_DSA,0), "EVP_PKEY_get1_DSA"},
{ERR_PACK(0,EVP_F_EVP_PKEY_GET1_RSA,0), "EVP_PKEY_get1_RSA"},
{ERR_PACK(0,EVP_F_EVP_PKEY_NEW,0), "EVP_PKEY_new"},
{ERR_PACK(0,EVP_F_EVP_RIJNDAEL,0), "EVP_RIJNDAEL"},
{ERR_PACK(0,EVP_F_EVP_SIGNFINAL,0), "EVP_SignFinal"},
{ERR_PACK(0,EVP_F_EVP_VERIFYFINAL,0), "EVP_VerifyFinal"},
{ERR_PACK(0,EVP_F_PKCS5_PBE_KEYIVGEN,0), "PKCS5_PBE_keyivgen"},
......@@ -96,7 +97,9 @@ static ERR_STRING_DATA EVP_str_functs[]=
static ERR_STRING_DATA EVP_str_reasons[]=
{
{EVP_R_BAD_BLOCK_LENGTH ,"bad block length"},
{EVP_R_BAD_DECRYPT ,"bad decrypt"},
{EVP_R_BAD_KEY_LENGTH ,"bad key length"},
{EVP_R_BN_DECODE_ERROR ,"bn decode error"},
{EVP_R_BN_PUBKEY_ERROR ,"bn pubkey error"},
{EVP_R_CIPHER_PARAMETER_ERROR ,"cipher parameter error"},
......
......@@ -91,6 +91,8 @@ hmac.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
hmac.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
hmac.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
hmac.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
hmac.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
hmac.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
hmac.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
hmac.o: ../../include/openssl/rijndael-alg-fst.h
hmac.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
hmac.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
hmac.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
hmac.o: ../../include/openssl/symhacks.h
......@@ -43,6 +43,12 @@ lib: $(LIBOBJ)
- $(RANLIB) $(LIB)
@touch lib
obj_dat.h: objects.h objects.txt obj_mac.h
perl obj_dat.pl obj_mac.h obj_dat.h
obj_mac.h: objects.txt obj_mac.num
perl objects.pl objects.txt obj_mac.num obj_mac.h
files:
$(PERL) $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO
......
......@@ -61,9 +61,9 @@
* perl obj_dat.pl objects.h obj_dat.h
*/
#define NUM_NID 393
#define NUM_SN 392
#define NUM_LN 392
#define NUM_NID 405
#define NUM_SN 401
#define NUM_LN 401
#define NUM_OBJ 366
static unsigned char lvalues[2896]={
......@@ -1045,6 +1045,27 @@ static ASN1_OBJECT nid_objs[NUM_NID]={
{"dcobject","dcObject",NID_dcObject,3,&(lvalues[2872]),0},
{"DC","domainComponent",NID_domainComponent,10,&(lvalues[2875]),0},
{"domain","Domain",NID_Domain,10,&(lvalues[2885]),0},
{NULL,NULL,NID_undef,0,NULL},
{NULL,NULL,NID_undef,0,NULL},
{NULL,NULL,NID_undef,0,NULL},
{"RIJNDAEL-ECB-K128-B128","rijndael-ecb-k128-b128",
NID_rijndael_ecb_k128_b128,0,NULL},
{"RIJNDAEL-ECB-K192-B128","rijndael-ecb-k192-b128",
NID_rijndael_ecb_k192_b128,0,NULL},
{"RIJNDAEL-ECB-K256-B128","rijndael-ecb-k256-b128",
NID_rijndael_ecb_k256_b128,0,NULL},
{"RIJNDAEL-ECB-K128-B192","rijndael-ecb-k128-b192",
NID_rijndael_ecb_k128_b192,0,NULL},
{"RIJNDAEL-ECB-K192-B192","rijndael-ecb-k192-b192",
NID_rijndael_ecb_k192_b192,0,NULL},
{"RIJNDAEL-ECB-K256-B192","rijndael-ecb-k256-b192",
NID_rijndael_ecb_k256_b192,0,NULL},
{"RIJNDAEL-ECB-K128-B256","rijndael-ecb-k128-b256",
NID_rijndael_ecb_k128_b256,0,NULL},
{"RIJNDAEL-ECB-K192-B256","rijndael-ecb-k192-b256",
NID_rijndael_ecb_k192_b256,0,NULL},
{"RIJNDAEL-ECB-K256-B256","rijndael-ecb-k256-b256",
NID_rijndael_ecb_k256_b256,0,NULL},
};
static ASN1_OBJECT *sn_objs[NUM_SN]={
......@@ -1134,6 +1155,15 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={
&(nid_objs[122]),/* "RC5-CFB" */
&(nid_objs[121]),/* "RC5-ECB" */
&(nid_objs[123]),/* "RC5-OFB" */
&(nid_objs[396]),/* "RIJNDAEL-ECB-K128-B128" */
&(nid_objs[399]),/* "RIJNDAEL-ECB-K128-B192" */
&(nid_objs[402]),/* "RIJNDAEL-ECB-K128-B256" */
&(nid_objs[397]),/* "RIJNDAEL-ECB-K192-B128" */
&(nid_objs[400]),/* "RIJNDAEL-ECB-K192-B192" */
&(nid_objs[403]),/* "RIJNDAEL-ECB-K192-B256" */
&(nid_objs[398]),/* "RIJNDAEL-ECB-K256-B128" */
&(nid_objs[401]),/* "RIJNDAEL-ECB-K256-B192" */
&(nid_objs[404]),/* "RIJNDAEL-ECB-K256-B256" */
&(nid_objs[117]),/* "RIPEMD160" */
&(nid_objs[124]),/* "RLE" */
&(nid_objs[19]),/* "RSA" */
......@@ -1804,6 +1834,15 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
&(nid_objs[122]),/* "rc5-cfb" */
&(nid_objs[121]),/* "rc5-ecb" */
&(nid_objs[123]),/* "rc5-ofb" */
&(nid_objs[396]),/* "rijndael-ecb-k128-b128" */
&(nid_objs[399]),/* "rijndael-ecb-k128-b192" */
&(nid_objs[402]),/* "rijndael-ecb-k128-b256" */
&(nid_objs[397]),/* "rijndael-ecb-k192-b128" */
&(nid_objs[400]),/* "rijndael-ecb-k192-b192" */
&(nid_objs[403]),/* "rijndael-ecb-k192-b256" */
&(nid_objs[398]),/* "rijndael-ecb-k256-b128" */
&(nid_objs[401]),/* "rijndael-ecb-k256-b192" */
&(nid_objs[404]),/* "rijndael-ecb-k256-b256" */
&(nid_objs[117]),/* "ripemd160" */
&(nid_objs[119]),/* "ripemd160WithRSA" */
&(nid_objs[19]),/* "rsa" */
......
......@@ -1796,3 +1796,39 @@
#define NID_zlib_compression 125
#define OBJ_zlib_compression 1L,1L,1L,1L,666L,2L
#define SN_rijndael_ecb_k128_b128 "RIJNDAEL-ECB-K128-B128"
#define LN_rijndael_ecb_k128_b128 "rijndael-ecb-k128-b128"
#define NID_rijndael_ecb_k128_b128 396
#define SN_rijndael_ecb_k192_b128 "RIJNDAEL-ECB-K192-B128"
#define LN_rijndael_ecb_k192_b128 "rijndael-ecb-k192-b128"
#define NID_rijndael_ecb_k192_b128 397
#define SN_rijndael_ecb_k256_b128 "RIJNDAEL-ECB-K256-B128"
#define LN_rijndael_ecb_k256_b128 "rijndael-ecb-k256-b128"
#define NID_rijndael_ecb_k256_b128 398
#define SN_rijndael_ecb_k128_b192 "RIJNDAEL-ECB-K128-B192"
#define LN_rijndael_ecb_k128_b192 "rijndael-ecb-k128-b192"
#define NID_rijndael_ecb_k128_b192 399
#define SN_rijndael_ecb_k192_b192 "RIJNDAEL-ECB-K192-B192"
#define LN_rijndael_ecb_k192_b192 "rijndael-ecb-k192-b192"
#define NID_rijndael_ecb_k192_b192 400
#define SN_rijndael_ecb_k256_b192 "RIJNDAEL-ECB-K256-B192"
#define LN_rijndael_ecb_k256_b192 "rijndael-ecb-k256-b192"
#define NID_rijndael_ecb_k256_b192 401
#define SN_rijndael_ecb_k128_b256 "RIJNDAEL-ECB-K128-B256"
#define LN_rijndael_ecb_k128_b256 "rijndael-ecb-k128-b256"
#define NID_rijndael_ecb_k128_b256 402
#define SN_rijndael_ecb_k192_b256 "RIJNDAEL-ECB-K192-B256"
#define LN_rijndael_ecb_k192_b256 "rijndael-ecb-k192-b256"
#define NID_rijndael_ecb_k192_b256 403
#define SN_rijndael_ecb_k256_b256 "RIJNDAEL-ECB-K256-B256"
#define LN_rijndael_ecb_k256_b256 "rijndael-ecb-k256-b256"
#define NID_rijndael_ecb_k256_b256 404
......@@ -390,3 +390,15 @@ Enterprises 389
dcObject 390
domainComponent 391
Domain 392
ld_ce 393
rd_ecb 394
rijndael_ecb 395
rijndael_ecb_k128_b128 396
rijndael_ecb_k192_b128 397
rijndael_ecb_k256_b128 398
rijndael_ecb_k128_b192 399
rijndael_ecb_k192_b192 400
rijndael_ecb_k256_b192 401
rijndael_ecb_k128_b256 402
rijndael_ecb_k192_b256 403
rijndael_ecb_k256_b256 404
......@@ -591,3 +591,13 @@ enterprises 1466 344 : dcobject : dcObject
!Cname zlib-compression
1 1 1 1 666 2 : ZLIB : zlib compression
# Rijndael
: RIJNDAEL-ECB-K128-B128: rijndael-ecb-k128-b128
: RIJNDAEL-ECB-K192-B128: rijndael-ecb-k192-b128
: RIJNDAEL-ECB-K256-B128: rijndael-ecb-k256-b128
: RIJNDAEL-ECB-K128-B192: rijndael-ecb-k128-b192
: RIJNDAEL-ECB-K192-B192: rijndael-ecb-k192-b192
: RIJNDAEL-ECB-K256-B192: rijndael-ecb-k256-b192
: RIJNDAEL-ECB-K128-B256: rijndael-ecb-k128-b256
: RIJNDAEL-ECB-K192-B256: rijndael-ecb-k192-b256
: RIJNDAEL-ECB-K256-B256: rijndael-ecb-k256-b256
......@@ -95,11 +95,12 @@ pem_all.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
pem_all.o: ../../include/openssl/pem.h ../../include/openssl/pem2.h
pem_all.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
pem_all.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
pem_all.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
pem_all.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
pem_all.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
pem_all.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
pem_all.o: ../cryptlib.h
pem_all.o: ../../include/openssl/rijndael-alg-fst.h
pem_all.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pem_all.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pem_all.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pem_all.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
pem_all.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
pem_err.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
pem_err.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
pem_err.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -114,7 +115,8 @@ pem_err.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
pem_err.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
pem_err.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
pem_err.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
pem_err.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
pem_err.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
pem_err.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pem_err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pem_err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pem_err.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -134,7 +136,9 @@ pem_info.o: ../../include/openssl/opensslconf.h
pem_info.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
pem_info.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
pem_info.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
pem_info.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
pem_info.o: ../../include/openssl/rc5.h
pem_info.o: ../../include/openssl/rijndael-alg-fst.h
pem_info.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pem_info.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pem_info.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pem_info.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -155,11 +159,12 @@ pem_lib.o: ../../include/openssl/pem.h ../../include/openssl/pem2.h
pem_lib.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
pem_lib.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
pem_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
pem_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
pem_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
pem_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
pem_lib.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
pem_lib.o: ../cryptlib.h
pem_lib.o: ../../include/openssl/rijndael-alg-fst.h
pem_lib.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pem_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pem_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pem_lib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
pem_lib.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
pem_seal.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
pem_seal.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
pem_seal.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -176,11 +181,12 @@ pem_seal.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
pem_seal.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
pem_seal.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
pem_seal.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
pem_seal.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
pem_seal.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
pem_seal.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
pem_seal.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
pem_seal.o: ../cryptlib.h
pem_seal.o: ../../include/openssl/rijndael-alg-fst.h
pem_seal.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pem_seal.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pem_seal.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pem_seal.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
pem_seal.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
pem_sign.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
pem_sign.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
pem_sign.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -197,8 +203,9 @@ pem_sign.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
pem_sign.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
pem_sign.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
pem_sign.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
pem_sign.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
pem_sign.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
pem_sign.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
pem_sign.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
pem_sign.o: ../cryptlib.h
pem_sign.o: ../../include/openssl/rijndael-alg-fst.h
pem_sign.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pem_sign.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pem_sign.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pem_sign.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
pem_sign.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
......@@ -99,7 +99,8 @@ p12_add.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
p12_add.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
p12_add.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
p12_add.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p12_add.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
p12_add.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
p12_add.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_add.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_add.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_add.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -119,11 +120,12 @@ p12_attr.o: ../../include/openssl/opensslconf.h
p12_attr.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
p12_attr.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
p12_attr.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
p12_attr.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
p12_attr.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
p12_attr.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
p12_attr.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
p12_attr.o: ../cryptlib.h
p12_attr.o: ../../include/openssl/rijndael-alg-fst.h
p12_attr.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_attr.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_attr.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_attr.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
p12_attr.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
p12_bags.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
p12_bags.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
p12_bags.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
......@@ -139,11 +141,12 @@ p12_bags.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p12_bags.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
p12_bags.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
p12_bags.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
p12_bags.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
p12_bags.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
p12_bags.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
p12_bags.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
p12_bags.o: ../cryptlib.h
p12_bags.o: ../../include/openssl/rijndael-alg-fst.h
p12_bags.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_bags.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_bags.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_bags.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
p12_bags.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
p12_crpt.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
p12_crpt.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
p12_crpt.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -159,11 +162,12 @@ p12_crpt.o: ../../include/openssl/opensslconf.h
p12_crpt.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
p12_crpt.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
p12_crpt.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
p12_crpt.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
p12_crpt.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
p12_crpt.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
p12_crpt.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
p12_crpt.o: ../cryptlib.h
p12_crpt.o: ../../include/openssl/rijndael-alg-fst.h
p12_crpt.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_crpt.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_crpt.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_crpt.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
p12_crpt.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
p12_crt.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
p12_crt.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
p12_crt.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -178,7 +182,8 @@ p12_crt.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
p12_crt.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
p12_crt.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
p12_crt.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p12_crt.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
p12_crt.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
p12_crt.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_crt.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_crt.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_crt.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -198,11 +203,12 @@ p12_decr.o: ../../include/openssl/opensslconf.h
p12_decr.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
p12_decr.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
p12_decr.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
p12_decr.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
p12_decr.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
p12_decr.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
p12_decr.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
p12_decr.o: ../cryptlib.h
p12_decr.o: ../../include/openssl/rijndael-alg-fst.h
p12_decr.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_decr.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_decr.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_decr.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
p12_decr.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
p12_init.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
p12_init.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
p12_init.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -218,11 +224,12 @@ p12_init.o: ../../include/openssl/opensslconf.h
p12_init.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
p12_init.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
p12_init.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
p12_init.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
p12_init.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
p12_init.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
p12_init.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
p12_init.o: ../cryptlib.h
p12_init.o: ../../include/openssl/rijndael-alg-fst.h
p12_init.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_init.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_init.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_init.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
p12_init.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
p12_key.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
p12_key.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
p12_key.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -237,7 +244,8 @@ p12_key.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
p12_key.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
p12_key.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
p12_key.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p12_key.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
p12_key.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
p12_key.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_key.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_key.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_key.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -257,11 +265,12 @@ p12_kiss.o: ../../include/openssl/opensslconf.h
p12_kiss.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
p12_kiss.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
p12_kiss.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
p12_kiss.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
p12_kiss.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
p12_kiss.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
p12_kiss.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
p12_kiss.o: ../cryptlib.h
p12_kiss.o: ../../include/openssl/rijndael-alg-fst.h
p12_kiss.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_kiss.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_kiss.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_kiss.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
p12_kiss.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
p12_lib.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
p12_lib.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
p12_lib.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
......@@ -277,11 +286,12 @@ p12_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p12_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
p12_lib.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
p12_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
p12_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
p12_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
p12_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
p12_lib.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
p12_lib.o: ../cryptlib.h
p12_lib.o: ../../include/openssl/rijndael-alg-fst.h
p12_lib.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_lib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
p12_lib.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
p12_mac.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
p12_mac.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
p12_mac.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
......@@ -297,11 +307,12 @@ p12_mac.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p12_mac.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
p12_mac.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
p12_mac.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
p12_mac.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
p12_mac.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
p12_mac.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
p12_mac.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
p12_mac.o: ../cryptlib.h
p12_mac.o: ../../include/openssl/rijndael-alg-fst.h
p12_mac.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_mac.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_mac.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_mac.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
p12_mac.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
p12_mutl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
p12_mutl.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
p12_mutl.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -317,7 +328,9 @@ p12_mutl.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p12_mutl.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
p12_mutl.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
p12_mutl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p12_mutl.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
p12_mutl.o: ../../include/openssl/rc5.h
p12_mutl.o: ../../include/openssl/rijndael-alg-fst.h
p12_mutl.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_mutl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_mutl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_mutl.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -337,10 +350,12 @@ p12_npas.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
p12_npas.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs12.h
p12_npas.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
p12_npas.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
p12_npas.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
p12_npas.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
p12_npas.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
p12_npas.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
p12_npas.o: ../../include/openssl/rijndael-alg-fst.h
p12_npas.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_npas.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_npas.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_npas.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
p12_npas.o: ../../include/openssl/x509_vfy.h
p12_sbag.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
p12_sbag.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
p12_sbag.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
......@@ -356,11 +371,12 @@ p12_sbag.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p12_sbag.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
p12_sbag.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
p12_sbag.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
p12_sbag.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
p12_sbag.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
p12_sbag.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
p12_sbag.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
p12_sbag.o: ../cryptlib.h
p12_sbag.o: ../../include/openssl/rijndael-alg-fst.h
p12_sbag.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_sbag.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_sbag.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_sbag.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
p12_sbag.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
p12_utl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
p12_utl.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
p12_utl.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -375,7 +391,8 @@ p12_utl.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
p12_utl.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
p12_utl.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
p12_utl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p12_utl.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
p12_utl.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
p12_utl.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p12_utl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p12_utl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p12_utl.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -394,7 +411,9 @@ pk12err.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
pk12err.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs12.h
pk12err.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
pk12err.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
pk12err.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
pk12err.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
pk12err.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
pk12err.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
pk12err.o: ../../include/openssl/rijndael-alg-fst.h
pk12err.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pk12err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pk12err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pk12err.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
pk12err.o: ../../include/openssl/x509_vfy.h
......@@ -112,7 +112,9 @@ pk7_attr.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
pk7_attr.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
pk7_attr.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
pk7_attr.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
pk7_attr.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
pk7_attr.o: ../../include/openssl/rc5.h
pk7_attr.o: ../../include/openssl/rijndael-alg-fst.h
pk7_attr.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pk7_attr.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pk7_attr.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pk7_attr.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -133,11 +135,13 @@ pk7_doit.o: ../../include/openssl/opensslconf.h
pk7_doit.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
pk7_doit.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
pk7_doit.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
pk7_doit.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
pk7_doit.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
pk7_doit.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
pk7_doit.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
pk7_doit.o: ../../include/openssl/x509v3.h ../cryptlib.h
pk7_doit.o: ../../include/openssl/rijndael-alg-fst.h
pk7_doit.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pk7_doit.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pk7_doit.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pk7_doit.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
pk7_doit.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
pk7_doit.o: ../cryptlib.h
pk7_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
pk7_lib.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
pk7_lib.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -152,11 +156,12 @@ pk7_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
pk7_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
pk7_lib.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
pk7_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
pk7_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
pk7_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
pk7_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
pk7_lib.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
pk7_lib.o: ../cryptlib.h
pk7_lib.o: ../../include/openssl/rijndael-alg-fst.h
pk7_lib.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pk7_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pk7_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pk7_lib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
pk7_lib.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
pk7_mime.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
pk7_mime.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
pk7_mime.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -172,11 +177,12 @@ pk7_mime.o: ../../include/openssl/opensslconf.h
pk7_mime.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
pk7_mime.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
pk7_mime.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
pk7_mime.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
pk7_mime.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
pk7_mime.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
pk7_mime.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
pk7_mime.o: ../cryptlib.h
pk7_mime.o: ../../include/openssl/rijndael-alg-fst.h
pk7_mime.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pk7_mime.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pk7_mime.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pk7_mime.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
pk7_mime.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
pk7_smime.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
pk7_smime.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
pk7_smime.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -192,7 +198,9 @@ pk7_smime.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
pk7_smime.o: ../../include/openssl/opensslconf.h
pk7_smime.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
pk7_smime.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
pk7_smime.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
pk7_smime.o: ../../include/openssl/rc5.h
pk7_smime.o: ../../include/openssl/rijndael-alg-fst.h
pk7_smime.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pk7_smime.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pk7_smime.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pk7_smime.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -211,7 +219,9 @@ pkcs7err.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
pkcs7err.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
pkcs7err.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
pkcs7err.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
pkcs7err.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
pkcs7err.o: ../../include/openssl/rc5.h
pkcs7err.o: ../../include/openssl/rijndael-alg-fst.h
pkcs7err.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
pkcs7err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
pkcs7err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
pkcs7err.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......
#
# SSLeay/crypto/blowfish/Makefile
#
DIR= rijndael
TOP= ../..
CC= cc
CPP= $(CC) -E
INCLUDES=
CFLAG=-g
INSTALL_PREFIX=
OPENSSLDIR= /usr/local/ssl
INSTALLTOP=/usr/local/ssl
MAKE= make -f Makefile.ssl
MAKEDEPEND= $(TOP)/util/domd $(TOP)
MAKEFILE= Makefile.ssl
AR= ar r
RD_ENC= rd_enc.o
# or use
#DES_ENC= bx86-elf.o
CFLAGS= $(INCLUDES) $(CFLAG) -DINTERMEDIATE_VALUE_KAT -DBINARY_KEY_MATERIAL
GENERAL=Makefile
#TEST=rijndael-test-fst.c table.128 table.192 table.256
TEST=
APPS=
LIB=$(TOP)/libcrypto.a
LIBSRC=rijndael-alg-fst.c
LIBOBJ=rijndael-alg-fst.o
SRC= $(LIBSRC)
EXHEADER=rijndael-alg-fst.h rijndael.h
top:
(cd ../..; $(MAKE) DIRS=crypto SDIRS=$(DIR) sub_all)
all: lib
lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB)
@touch lib
files:
$(PERL) $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO
links:
@$(TOP)/util/point.sh Makefile.ssl Makefile
@$(PERL) $(TOP)/util/mklink.pl ../../include/openssl $(EXHEADER)
@$(PERL) $(TOP)/util/mklink.pl ../../test $(TEST)
@$(PERL) $(TOP)/util/mklink.pl ../../apps $(APPS)
install: installs
installs:
@for i in $(EXHEADER) ; \
do \
(cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
done;
tags:
ctags $(SRC)
tests:
lint:
lint -DLINT $(INCLUDES) $(SRC)>fluff
depend:
$(MAKEDEPEND) $(INCLUDES) $(DEPFLAG) $(PROGS) $(LIBSRC)
dclean:
$(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
mv -f Makefile.new $(MAKEFILE)
clean:
rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
# DO NOT DELETE THIS LINE
rijndael-alg-fst.o: boxes-fst-corrected.dat rijndael-alg-fst.h
Rijndael
Joan Daemen
Optimised ANSI C v2.4
-----------------------------------------------------------
This archive contains the following files:
Makefile: A file that allows for easy compiling of the code with
Unix `make' (tested with GNU make).
README: This file.
boxes-fst.dat: Tables that are needed by the reference implementation.
The tables implement the S-box and its inverse, and also
some temporary tables needed for multiplying in the finite
field GF(2^8).
rijndael-alg-fst.c:
rijndael-alg-fst.h:
Algorithm implementation.
rijndael-api-fst.c:
rijndael-api-fst.h:
Interface to the C API.
rijndaeltest-fst.c:
Implementation of the KAT and MCT.
table.128:
table.192:
table.256:
Files needed for the KAT (for the Table Known Answer Test).
Instructions for the KAT and MCT software:
1) Compile the C code and put the executable in the same directory as the
table.??? files.
2) Run the executable. It generates all the tables in the NIST format.
3) Compare the generated tables with the original provided tables, e.g.
in Unix, with `diff'.
4) The code is independent of the ENDIANness of the machine.
However, the code casts char pointers to int pointers.
On some platforms, this casting can cause problems.
This will cause malfunctioning of the CBC Monte Carlo tests.
In this case, the compile parameter STRICT_ALIGN should be set to 1.
(Of course this results in slower code.)
Changes with respect to v1.0 (= round 1 submission)
---------------------------------------------------
1) Removed the parameter blockLen from makeKey() and cipherInit().
The parameter is still present in the structures keyInstance and
cipherInstance.
2) Removed some calls to sscan().
3) Corrected the CBC decryption Monte Carlo test code.
4) Provided code for platforms with pointer alignment problems.
----------------------------------------------------------------------
Changes from v2.0 (= round 2 submission)
----------------------------------------
Various bug fixes in CBC encryption and decryption mode.
----------------------------------------------------------------------
Changes from v2.2
-----------------
-- Moved number of rounds to the keyInstance structure
to make implementation thread-safe
-- Functions used only to generate the Intermediate Value
Known Answer Test are now conditionally compiled
via #define INTERMEDIATE_VALUE_KAT
-- Further optimized for the default 128-bit block size
-- Fixed CBC decryption bug (chained IV was lost if input
and outBuffer were the same)
-- Added padding capability to CBC mode (allows encryption
of any number of octets, not only full blocks)
----------------------------------------------------------------------
Changes from v2.3
-----------------
Fixed a small bug in CBC mode.
此差异已折叠。
/*
* rijndael-alg-fst.c v2.4 April '2000
*
* Optimised ANSI C code
*
* authors: v1.0: Antoon Bosselaers
* v2.0: Vincent Rijmen
* v2.3: Paulo Barreto
* v2.4: Vincent Rijmen
*
* This code is placed in the public domain.
*/
#include <stdio.h>
#include <stdlib.h>
#include "rijndael-alg-fst.h"
#include "boxes-fst-corrected.dat"
int rijndaelKeySched(const word8 k[RIJNDAEL_MAXKC][4],
word8 W[RIJNDAEL_MAXROUNDS+1][4][4],int ROUNDS)
{
/* Calculate the necessary round keys
* The number of calculations depends on keyBits and blockBits
*/
int j, r, t, rconpointer = 0;
word8 tk[RIJNDAEL_MAXKC][4];
int KC = ROUNDS - 6;
for (j = KC-1; j >= 0; j--)
*((word32*)tk[j]) = *((word32*)k[j]);
r = 0;
t = 0;
/* copy values into round key array */
for (j = 0; (j < KC) && (r < ROUNDS + 1); )
{
for (; (j < KC) && (t < 4); j++, t++)
*((word32*)W[r][t]) = *((word32*)tk[j]);
if (t == 4)
{
r++;
t = 0;
}
}
while (r < ROUNDS + 1)
{ /* while not enough round key material calculated */
/* calculate new values */
tk[0][0] ^= S[tk[KC-1][1]];
tk[0][1] ^= S[tk[KC-1][2]];
tk[0][2] ^= S[tk[KC-1][3]];
tk[0][3] ^= S[tk[KC-1][0]];
tk[0][0] ^= rcon[rconpointer++];
if (KC != 8)
{
for (j = 1; j < KC; j++)
{
*((word32*)tk[j]) ^= *((word32*)tk[j-1]);
}
}
else
{
for (j = 1; j < KC/2; j++)
{
*((word32*)tk[j]) ^= *((word32*)tk[j-1]);
}
tk[KC/2][0] ^= S[tk[KC/2 - 1][0]];
tk[KC/2][1] ^= S[tk[KC/2 - 1][1]];
tk[KC/2][2] ^= S[tk[KC/2 - 1][2]];
tk[KC/2][3] ^= S[tk[KC/2 - 1][3]];
for (j = KC/2 + 1; j < KC; j++)
{
*((word32*)tk[j]) ^= *((word32*)tk[j-1]);
}
}
/* copy values into round key array */
for (j = 0; (j < KC) && (r < ROUNDS + 1); )
{
for (; (j < KC) && (t < 4); j++, t++)
{
*((word32*)W[r][t]) = *((word32*)tk[j]);
}
if (t == 4)
{
r++;
t = 0;
}
}
}
return 0;
}
int rijndaelKeyEncToDec(word8 W[RIJNDAEL_MAXROUNDS+1][4][4], int ROUNDS)
{
int r;
word8 *w;
for (r = 1; r < ROUNDS; r++)
{
w = W[r][0];
*((word32*)w) =
*((word32*)U1[w[0]])
^ *((word32*)U2[w[1]])
^ *((word32*)U3[w[2]])
^ *((word32*)U4[w[3]]);
w = W[r][1];
*((word32*)w) =
*((word32*)U1[w[0]])
^ *((word32*)U2[w[1]])
^ *((word32*)U3[w[2]])
^ *((word32*)U4[w[3]]);
w = W[r][2];
*((word32*)w) =
*((word32*)U1[w[0]])
^ *((word32*)U2[w[1]])
^ *((word32*)U3[w[2]])
^ *((word32*)U4[w[3]]);
w = W[r][3];
*((word32*)w) =
*((word32*)U1[w[0]])
^ *((word32*)U2[w[1]])
^ *((word32*)U3[w[2]])
^ *((word32*)U4[w[3]]);
}
return 0;
}
/**
* Encrypt a single block.
*/
int rijndaelEncrypt(const word8 a[16],word8 b[16],
word8 rk[RIJNDAEL_MAXROUNDS+1][4][4],
int ROUNDS)
{
int r;
word8 temp[4][4];
*((word32*)temp[0]) = *((word32*)(a )) ^ *((word32*)rk[0][0]);
*((word32*)temp[1]) = *((word32*)(a+ 4)) ^ *((word32*)rk[0][1]);
*((word32*)temp[2]) = *((word32*)(a+ 8)) ^ *((word32*)rk[0][2]);
*((word32*)temp[3]) = *((word32*)(a+12)) ^ *((word32*)rk[0][3]);
*((word32*)(b )) = *((word32*)T1[temp[0][0]])
^ *((word32*)T2[temp[1][1]])
^ *((word32*)T3[temp[2][2]])
^ *((word32*)T4[temp[3][3]]);
*((word32*)(b + 4)) = *((word32*)T1[temp[1][0]])
^ *((word32*)T2[temp[2][1]])
^ *((word32*)T3[temp[3][2]])
^ *((word32*)T4[temp[0][3]]);
*((word32*)(b + 8)) = *((word32*)T1[temp[2][0]])
^ *((word32*)T2[temp[3][1]])
^ *((word32*)T3[temp[0][2]])
^ *((word32*)T4[temp[1][3]]);
*((word32*)(b +12)) = *((word32*)T1[temp[3][0]])
^ *((word32*)T2[temp[0][1]])
^ *((word32*)T3[temp[1][2]])
^ *((word32*)T4[temp[2][3]]);
for (r = 1; r < ROUNDS-1; r++)
{
*((word32*)temp[0]) = *((word32*)(b )) ^ *((word32*)rk[r][0]);
*((word32*)temp[1]) = *((word32*)(b+ 4)) ^ *((word32*)rk[r][1]);
*((word32*)temp[2]) = *((word32*)(b+ 8)) ^ *((word32*)rk[r][2]);
*((word32*)temp[3]) = *((word32*)(b+12)) ^ *((word32*)rk[r][3]);
*((word32*)(b )) = *((word32*)T1[temp[0][0]])
^ *((word32*)T2[temp[1][1]])
^ *((word32*)T3[temp[2][2]])
^ *((word32*)T4[temp[3][3]]);
*((word32*)(b + 4)) = *((word32*)T1[temp[1][0]])
^ *((word32*)T2[temp[2][1]])
^ *((word32*)T3[temp[3][2]])
^ *((word32*)T4[temp[0][3]]);
*((word32*)(b + 8)) = *((word32*)T1[temp[2][0]])
^ *((word32*)T2[temp[3][1]])
^ *((word32*)T3[temp[0][2]])
^ *((word32*)T4[temp[1][3]]);
*((word32*)(b +12)) = *((word32*)T1[temp[3][0]])
^ *((word32*)T2[temp[0][1]])
^ *((word32*)T3[temp[1][2]])
^ *((word32*)T4[temp[2][3]]);
}
/* last round is special */
*((word32*)temp[0]) = *((word32*)(b )) ^ *((word32*)rk[ROUNDS-1][0]);
*((word32*)temp[1]) = *((word32*)(b+ 4)) ^ *((word32*)rk[ROUNDS-1][1]);
*((word32*)temp[2]) = *((word32*)(b+ 8)) ^ *((word32*)rk[ROUNDS-1][2]);
*((word32*)temp[3]) = *((word32*)(b+12)) ^ *((word32*)rk[ROUNDS-1][3]);
b[ 0] = T1[temp[0][0]][1];
b[ 1] = T1[temp[1][1]][1];
b[ 2] = T1[temp[2][2]][1];
b[ 3] = T1[temp[3][3]][1];
b[ 4] = T1[temp[1][0]][1];
b[ 5] = T1[temp[2][1]][1];
b[ 6] = T1[temp[3][2]][1];
b[ 7] = T1[temp[0][3]][1];
b[ 8] = T1[temp[2][0]][1];
b[ 9] = T1[temp[3][1]][1];
b[10] = T1[temp[0][2]][1];
b[11] = T1[temp[1][3]][1];
b[12] = T1[temp[3][0]][1];
b[13] = T1[temp[0][1]][1];
b[14] = T1[temp[1][2]][1];
b[15] = T1[temp[2][3]][1];
*((word32*)(b )) ^= *((word32*)rk[ROUNDS][0]);
*((word32*)(b+ 4)) ^= *((word32*)rk[ROUNDS][1]);
*((word32*)(b+ 8)) ^= *((word32*)rk[ROUNDS][2]);
*((word32*)(b+12)) ^= *((word32*)rk[ROUNDS][3]);
return 0;
}
#ifdef INTERMEDIATE_VALUE_KAT
/**
* Encrypt only a certain number of rounds.
* Only used in the Intermediate Value Known Answer Test.
*/
int rijndaelEncryptRound(word8 a[4][4],word8 rk[RIJNDAEL_MAXROUNDS+1][4][4],
int ROUNDS, int rounds)
{
int r;
word8 temp[4][4];
/* make number of rounds sane */
if (rounds > ROUNDS)
{
rounds = ROUNDS;
}
*((word32*)a[0]) = *((word32*)a[0]) ^ *((word32*)rk[0][0]);
*((word32*)a[1]) = *((word32*)a[1]) ^ *((word32*)rk[0][1]);
*((word32*)a[2]) = *((word32*)a[2]) ^ *((word32*)rk[0][2]);
*((word32*)a[3]) = *((word32*)a[3]) ^ *((word32*)rk[0][3]);
for (r = 1; (r <= rounds) && (r < ROUNDS); r++) {
*((word32*)temp[0]) = *((word32*)T1[a[0][0]])
^ *((word32*)T2[a[1][1]])
^ *((word32*)T3[a[2][2]])
^ *((word32*)T4[a[3][3]]);
*((word32*)temp[1]) = *((word32*)T1[a[1][0]])
^ *((word32*)T2[a[2][1]])
^ *((word32*)T3[a[3][2]])
^ *((word32*)T4[a[0][3]]);
*((word32*)temp[2]) = *((word32*)T1[a[2][0]])
^ *((word32*)T2[a[3][1]])
^ *((word32*)T3[a[0][2]])
^ *((word32*)T4[a[1][3]]);
*((word32*)temp[3]) = *((word32*)T1[a[3][0]])
^ *((word32*)T2[a[0][1]])
^ *((word32*)T3[a[1][2]])
^ *((word32*)T4[a[2][3]]);
*((word32*)a[0]) = *((word32*)temp[0]) ^ *((word32*)rk[r][0]);
*((word32*)a[1]) = *((word32*)temp[1]) ^ *((word32*)rk[r][1]);
*((word32*)a[2]) = *((word32*)temp[2]) ^ *((word32*)rk[r][2]);
*((word32*)a[3]) = *((word32*)temp[3]) ^ *((word32*)rk[r][3]);
}
if (rounds == ROUNDS)
{
/* last round is special */
temp[0][0] = T1[a[0][0]][1];
temp[0][1] = T1[a[1][1]][1];
temp[0][2] = T1[a[2][2]][1];
temp[0][3] = T1[a[3][3]][1];
temp[1][0] = T1[a[1][0]][1];
temp[1][1] = T1[a[2][1]][1];
temp[1][2] = T1[a[3][2]][1];
temp[1][3] = T1[a[0][3]][1];
temp[2][0] = T1[a[2][0]][1];
temp[2][1] = T1[a[3][1]][1];
temp[2][2] = T1[a[0][2]][1];
temp[2][3] = T1[a[1][3]][1];
temp[3][0] = T1[a[3][0]][1];
temp[3][1] = T1[a[0][1]][1];
temp[3][2] = T1[a[1][2]][1];
temp[3][3] = T1[a[2][3]][1];
*((word32*)a[0]) = *((word32*)temp[0]) ^ *((word32*)rk[ROUNDS][0]);
*((word32*)a[1]) = *((word32*)temp[1]) ^ *((word32*)rk[ROUNDS][1]);
*((word32*)a[2]) = *((word32*)temp[2]) ^ *((word32*)rk[ROUNDS][2]);
*((word32*)a[3]) = *((word32*)temp[3]) ^ *((word32*)rk[ROUNDS][3]);
}
return 0;
}
#endif /* INTERMEDIATE_VALUE_KAT */
/**
* Decrypt a single block.
*/
int rijndaelDecrypt(const word8 a[16],word8 b[16],
word8 rk[RIJNDAEL_MAXROUNDS+1][4][4],int ROUNDS)
{
int r;
word8 temp[4][4];
*((word32*)temp[0]) = *((word32*)(a )) ^ *((word32*)rk[ROUNDS][0]);
*((word32*)temp[1]) = *((word32*)(a+ 4)) ^ *((word32*)rk[ROUNDS][1]);
*((word32*)temp[2]) = *((word32*)(a+ 8)) ^ *((word32*)rk[ROUNDS][2]);
*((word32*)temp[3]) = *((word32*)(a+12)) ^ *((word32*)rk[ROUNDS][3]);
*((word32*)(b )) = *((word32*)T5[temp[0][0]])
^ *((word32*)T6[temp[3][1]])
^ *((word32*)T7[temp[2][2]])
^ *((word32*)T8[temp[1][3]]);
*((word32*)(b+ 4)) = *((word32*)T5[temp[1][0]])
^ *((word32*)T6[temp[0][1]])
^ *((word32*)T7[temp[3][2]])
^ *((word32*)T8[temp[2][3]]);
*((word32*)(b+ 8)) = *((word32*)T5[temp[2][0]])
^ *((word32*)T6[temp[1][1]])
^ *((word32*)T7[temp[0][2]])
^ *((word32*)T8[temp[3][3]]);
*((word32*)(b+12)) = *((word32*)T5[temp[3][0]])
^ *((word32*)T6[temp[2][1]])
^ *((word32*)T7[temp[1][2]])
^ *((word32*)T8[temp[0][3]]);
for (r = ROUNDS-1; r > 1; r--)
{
*((word32*)temp[0]) = *((word32*)(b )) ^ *((word32*)rk[r][0]);
*((word32*)temp[1]) = *((word32*)(b+ 4)) ^ *((word32*)rk[r][1]);
*((word32*)temp[2]) = *((word32*)(b+ 8)) ^ *((word32*)rk[r][2]);
*((word32*)temp[3]) = *((word32*)(b+12)) ^ *((word32*)rk[r][3]);
*((word32*)(b )) = *((word32*)T5[temp[0][0]])
^ *((word32*)T6[temp[3][1]])
^ *((word32*)T7[temp[2][2]])
^ *((word32*)T8[temp[1][3]]);
*((word32*)(b+ 4)) = *((word32*)T5[temp[1][0]])
^ *((word32*)T6[temp[0][1]])
^ *((word32*)T7[temp[3][2]])
^ *((word32*)T8[temp[2][3]]);
*((word32*)(b+ 8)) = *((word32*)T5[temp[2][0]])
^ *((word32*)T6[temp[1][1]])
^ *((word32*)T7[temp[0][2]])
^ *((word32*)T8[temp[3][3]]);
*((word32*)(b+12)) = *((word32*)T5[temp[3][0]])
^ *((word32*)T6[temp[2][1]])
^ *((word32*)T7[temp[1][2]])
^ *((word32*)T8[temp[0][3]]);
}
/* last round is special */
*((word32*)temp[0]) = *((word32*)(b )) ^ *((word32*)rk[1][0]);
*((word32*)temp[1]) = *((word32*)(b+ 4)) ^ *((word32*)rk[1][1]);
*((word32*)temp[2]) = *((word32*)(b+ 8)) ^ *((word32*)rk[1][2]);
*((word32*)temp[3]) = *((word32*)(b+12)) ^ *((word32*)rk[1][3]);
b[ 0] = S5[temp[0][0]];
b[ 1] = S5[temp[3][1]];
b[ 2] = S5[temp[2][2]];
b[ 3] = S5[temp[1][3]];
b[ 4] = S5[temp[1][0]];
b[ 5] = S5[temp[0][1]];
b[ 6] = S5[temp[3][2]];
b[ 7] = S5[temp[2][3]];
b[ 8] = S5[temp[2][0]];
b[ 9] = S5[temp[1][1]];
b[10] = S5[temp[0][2]];
b[11] = S5[temp[3][3]];
b[12] = S5[temp[3][0]];
b[13] = S5[temp[2][1]];
b[14] = S5[temp[1][2]];
b[15] = S5[temp[0][3]];
*((word32*)(b )) ^= *((word32*)rk[0][0]);
*((word32*)(b+ 4)) ^= *((word32*)rk[0][1]);
*((word32*)(b+ 8)) ^= *((word32*)rk[0][2]);
*((word32*)(b+12)) ^= *((word32*)rk[0][3]);
return 0;
}
#ifdef INTERMEDIATE_VALUE_KAT
/**
* Decrypt only a certain number of rounds.
* Only used in the Intermediate Value Known Answer Test.
* Operations rearranged such that the intermediate values
* of decryption correspond with the intermediate values
* of encryption.
*/
int rijndaelDecryptRound(word8 a[4][4], word8 rk[RIJNDAEL_MAXROUNDS+1][4][4],
int ROUNDS, int rounds)
{
int r, i;
word8 temp[4], shift;
/* make number of rounds sane */
if (rounds > ROUNDS)
{
rounds = ROUNDS;
}
/* first round is special: */
*(word32 *)a[0] ^= *(word32 *)rk[ROUNDS][0];
*(word32 *)a[1] ^= *(word32 *)rk[ROUNDS][1];
*(word32 *)a[2] ^= *(word32 *)rk[ROUNDS][2];
*(word32 *)a[3] ^= *(word32 *)rk[ROUNDS][3];
for (i = 0; i < 4; i++)
{
a[i][0] = Si[a[i][0]];
a[i][1] = Si[a[i][1]];
a[i][2] = Si[a[i][2]];
a[i][3] = Si[a[i][3]];
}
for (i = 1; i < 4; i++)
{
shift = (4 - i) & 3;
temp[0] = a[(0 + shift) & 3][i];
temp[1] = a[(1 + shift) & 3][i];
temp[2] = a[(2 + shift) & 3][i];
temp[3] = a[(3 + shift) & 3][i];
a[0][i] = temp[0];
a[1][i] = temp[1];
a[2][i] = temp[2];
a[3][i] = temp[3];
}
/* ROUNDS-1 ordinary rounds */
for (r = ROUNDS-1; r > rounds; r--)
{
*(word32 *)a[0] ^= *(word32 *)rk[r][0];
*(word32 *)a[1] ^= *(word32 *)rk[r][1];
*(word32 *)a[2] ^= *(word32 *)rk[r][2];
*(word32 *)a[3] ^= *(word32 *)rk[r][3];
*((word32*)a[0]) =
*((word32*)U1[a[0][0]])
^ *((word32*)U2[a[0][1]])
^ *((word32*)U3[a[0][2]])
^ *((word32*)U4[a[0][3]]);
*((word32*)a[1]) =
*((word32*)U1[a[1][0]])
^ *((word32*)U2[a[1][1]])
^ *((word32*)U3[a[1][2]])
^ *((word32*)U4[a[1][3]]);
*((word32*)a[2]) =
*((word32*)U1[a[2][0]])
^ *((word32*)U2[a[2][1]])
^ *((word32*)U3[a[2][2]])
^ *((word32*)U4[a[2][3]]);
*((word32*)a[3]) =
*((word32*)U1[a[3][0]])
^ *((word32*)U2[a[3][1]])
^ *((word32*)U3[a[3][2]])
^ *((word32*)U4[a[3][3]]);
for (i = 0; i < 4; i++)
{
a[i][0] = Si[a[i][0]];
a[i][1] = Si[a[i][1]];
a[i][2] = Si[a[i][2]];
a[i][3] = Si[a[i][3]];
}
for (i = 1; i < 4; i++)
{
shift = (4 - i) & 3;
temp[0] = a[(0 + shift) & 3][i];
temp[1] = a[(1 + shift) & 3][i];
temp[2] = a[(2 + shift) & 3][i];
temp[3] = a[(3 + shift) & 3][i];
a[0][i] = temp[0];
a[1][i] = temp[1];
a[2][i] = temp[2];
a[3][i] = temp[3];
}
}
if (rounds == 0)
{
/* End with the extra key addition */
*(word32 *)a[0] ^= *(word32 *)rk[0][0];
*(word32 *)a[1] ^= *(word32 *)rk[0][1];
*(word32 *)a[2] ^= *(word32 *)rk[0][2];
*(word32 *)a[3] ^= *(word32 *)rk[0][3];
}
return 0;
}
#endif /* INTERMEDIATE_VALUE_KAT */
/*
* rijndael-alg-fst.h v2.4 April '2000
*
* Optimised ANSI C code
*
* #define INTERMEDIATE_VALUE_KAT to generate the Intermediate Value Known Answer Test.
*/
#ifndef __RIJNDAEL_ALG_FST_H
#define __RIJNDAEL_ALG_FST_H
#define RIJNDAEL_MAXKC (256/32)
#define RIJNDAEL_MAXROUNDS 14
#ifndef USUAL_TYPES
#define USUAL_TYPES
typedef unsigned char byte;
typedef unsigned char word8;
typedef unsigned short word16;
typedef unsigned int word32;
#endif /* USUAL_TYPES */
int rijndaelKeySched(const word8 k[RIJNDAEL_MAXKC][4],
word8 rk[RIJNDAEL_MAXROUNDS+1][4][4],
int ROUNDS);
int rijndaelKeyEncToDec(word8 W[RIJNDAEL_MAXROUNDS+1][4][4], int ROUNDS);
int rijndaelEncrypt(const word8 a[16],word8 b[16],
word8 rk[RIJNDAEL_MAXROUNDS+1][4][4],
int ROUNDS);
#ifdef INTERMEDIATE_VALUE_KAT
int rijndaelEncryptRound(word8 a[4][4],word8 rk[RIJNDAEL_MAXROUNDS+1][4][4],
int ROUNDS, int rounds);
#endif /* INTERMEDIATE_VALUE_KAT */
int rijndaelDecrypt(const word8 a[16], word8 b[16],
word8 rk[RIJNDAEL_MAXROUNDS+1][4][4], int ROUNDS);
#ifdef INTERMEDIATE_VALUE_KAT
int rijndaelDecryptRound(word8 a[4][4], word8 rk[RIJNDAEL_MAXROUNDS+1][4][4],
int ROUNDS, int rounds);
#endif /* INTERMEDIATE_VALUE_KAT */
#endif /* __RIJNDAEL_ALG_FST_H */
#include "rijndael-alg-fst.h"
#define RIJNDAEL_MAX_IV 16
typedef struct
{
word8 keySched[RIJNDAEL_MAXROUNDS+1][4][4];
int rounds;
word8 iv[RIJNDAEL_MAX_IV];
int enc;
} RIJNDAEL_KEY;
......@@ -166,7 +166,9 @@ rsa_saos.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
rsa_saos.o: ../../include/openssl/opensslconf.h
rsa_saos.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
rsa_saos.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
rsa_saos.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
rsa_saos.o: ../../include/openssl/rc5.h
rsa_saos.o: ../../include/openssl/rijndael-alg-fst.h
rsa_saos.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
rsa_saos.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
rsa_saos.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
rsa_saos.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -185,7 +187,9 @@ rsa_sign.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
rsa_sign.o: ../../include/openssl/opensslconf.h
rsa_sign.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
rsa_sign.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
rsa_sign.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
rsa_sign.o: ../../include/openssl/rc5.h
rsa_sign.o: ../../include/openssl/rijndael-alg-fst.h
rsa_sign.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
rsa_sign.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
rsa_sign.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
rsa_sign.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......
......@@ -103,11 +103,12 @@ by_dir.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
by_dir.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
by_dir.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
by_dir.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
by_dir.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
by_dir.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
by_dir.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
by_dir.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
by_dir.o: ../cryptlib.h
by_dir.o: ../../include/openssl/rijndael-alg-fst.h
by_dir.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
by_dir.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
by_dir.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
by_dir.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
by_dir.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
by_file.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
by_file.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
by_file.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -123,11 +124,12 @@ by_file.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
by_file.o: ../../include/openssl/pem.h ../../include/openssl/pem2.h
by_file.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
by_file.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
by_file.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
by_file.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
by_file.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
by_file.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
by_file.o: ../cryptlib.h
by_file.o: ../../include/openssl/rijndael-alg-fst.h
by_file.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
by_file.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
by_file.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
by_file.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
by_file.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
x509_att.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
x509_att.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
x509_att.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -143,7 +145,9 @@ x509_att.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_att.o: ../../include/openssl/opensslconf.h
x509_att.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509_att.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509_att.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509_att.o: ../../include/openssl/rc5.h
x509_att.o: ../../include/openssl/rijndael-alg-fst.h
x509_att.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_att.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_att.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_att.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -164,7 +168,9 @@ x509_cmp.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_cmp.o: ../../include/openssl/opensslconf.h
x509_cmp.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509_cmp.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509_cmp.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509_cmp.o: ../../include/openssl/rc5.h
x509_cmp.o: ../../include/openssl/rijndael-alg-fst.h
x509_cmp.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_cmp.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_cmp.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_cmp.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -184,11 +190,12 @@ x509_d2.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_d2.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
x509_d2.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
x509_d2.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
x509_d2.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
x509_d2.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
x509_d2.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
x509_d2.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
x509_d2.o: ../cryptlib.h
x509_d2.o: ../../include/openssl/rijndael-alg-fst.h
x509_d2.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_d2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_d2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_d2.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
x509_d2.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
x509_def.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
x509_def.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
x509_def.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -203,7 +210,9 @@ x509_def.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_def.o: ../../include/openssl/opensslconf.h
x509_def.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509_def.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509_def.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509_def.o: ../../include/openssl/rc5.h
x509_def.o: ../../include/openssl/rijndael-alg-fst.h
x509_def.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_def.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_def.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_def.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -221,7 +230,9 @@ x509_err.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x509_err.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x509_err.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509_err.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509_err.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509_err.o: ../../include/openssl/rc5.h
x509_err.o: ../../include/openssl/rijndael-alg-fst.h
x509_err.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_err.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -241,7 +252,9 @@ x509_ext.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_ext.o: ../../include/openssl/opensslconf.h
x509_ext.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509_ext.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509_ext.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509_ext.o: ../../include/openssl/rc5.h
x509_ext.o: ../../include/openssl/rijndael-alg-fst.h
x509_ext.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_ext.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_ext.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_ext.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -261,11 +274,12 @@ x509_lu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_lu.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
x509_lu.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
x509_lu.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
x509_lu.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
x509_lu.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
x509_lu.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
x509_lu.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
x509_lu.o: ../cryptlib.h
x509_lu.o: ../../include/openssl/rijndael-alg-fst.h
x509_lu.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_lu.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_lu.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_lu.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
x509_lu.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
x509_obj.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
x509_obj.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
x509_obj.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -280,7 +294,9 @@ x509_obj.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_obj.o: ../../include/openssl/opensslconf.h
x509_obj.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509_obj.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509_obj.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509_obj.o: ../../include/openssl/rc5.h
x509_obj.o: ../../include/openssl/rijndael-alg-fst.h
x509_obj.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_obj.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_obj.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_obj.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -299,7 +315,9 @@ x509_r2x.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_r2x.o: ../../include/openssl/opensslconf.h
x509_r2x.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509_r2x.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509_r2x.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509_r2x.o: ../../include/openssl/rc5.h
x509_r2x.o: ../../include/openssl/rijndael-alg-fst.h
x509_r2x.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_r2x.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_r2x.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_r2x.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -319,7 +337,9 @@ x509_req.o: ../../include/openssl/opensslconf.h
x509_req.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
x509_req.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
x509_req.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509_req.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509_req.o: ../../include/openssl/rc5.h
x509_req.o: ../../include/openssl/rijndael-alg-fst.h
x509_req.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_req.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_req.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_req.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -338,7 +358,9 @@ x509_set.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_set.o: ../../include/openssl/opensslconf.h
x509_set.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509_set.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509_set.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509_set.o: ../../include/openssl/rc5.h
x509_set.o: ../../include/openssl/rijndael-alg-fst.h
x509_set.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_set.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_set.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_set.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -358,7 +380,9 @@ x509_trs.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_trs.o: ../../include/openssl/opensslconf.h
x509_trs.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509_trs.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509_trs.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509_trs.o: ../../include/openssl/rc5.h
x509_trs.o: ../../include/openssl/rijndael-alg-fst.h
x509_trs.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_trs.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_trs.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_trs.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -378,7 +402,9 @@ x509_txt.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_txt.o: ../../include/openssl/opensslconf.h
x509_txt.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509_txt.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509_txt.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509_txt.o: ../../include/openssl/rc5.h
x509_txt.o: ../../include/openssl/rijndael-alg-fst.h
x509_txt.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_txt.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_txt.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_txt.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -398,11 +424,13 @@ x509_v3.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_v3.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
x509_v3.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
x509_v3.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
x509_v3.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
x509_v3.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
x509_v3.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
x509_v3.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
x509_v3.o: ../../include/openssl/x509v3.h ../cryptlib.h
x509_v3.o: ../../include/openssl/rijndael-alg-fst.h
x509_v3.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_v3.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_v3.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_v3.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
x509_v3.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
x509_v3.o: ../cryptlib.h
x509_vfy.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
x509_vfy.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
x509_vfy.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
......@@ -418,7 +446,9 @@ x509_vfy.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509_vfy.o: ../../include/openssl/opensslconf.h
x509_vfy.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509_vfy.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509_vfy.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509_vfy.o: ../../include/openssl/rc5.h
x509_vfy.o: ../../include/openssl/rijndael-alg-fst.h
x509_vfy.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509_vfy.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509_vfy.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509_vfy.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -438,7 +468,9 @@ x509name.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509name.o: ../../include/openssl/opensslconf.h
x509name.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509name.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509name.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509name.o: ../../include/openssl/rc5.h
x509name.o: ../../include/openssl/rijndael-alg-fst.h
x509name.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509name.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509name.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509name.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -457,7 +489,9 @@ x509rset.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509rset.o: ../../include/openssl/opensslconf.h
x509rset.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509rset.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509rset.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509rset.o: ../../include/openssl/rc5.h
x509rset.o: ../../include/openssl/rijndael-alg-fst.h
x509rset.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509rset.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509rset.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509rset.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -476,7 +510,9 @@ x509spki.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x509spki.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x509spki.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509spki.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509spki.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509spki.o: ../../include/openssl/rc5.h
x509spki.o: ../../include/openssl/rijndael-alg-fst.h
x509spki.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509spki.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509spki.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509spki.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -495,7 +531,9 @@ x509type.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x509type.o: ../../include/openssl/opensslconf.h
x509type.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x509type.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x509type.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
x509type.o: ../../include/openssl/rc5.h
x509type.o: ../../include/openssl/rijndael-alg-fst.h
x509type.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x509type.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x509type.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x509type.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
......@@ -514,8 +552,9 @@ x_all.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
x_all.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
x_all.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
x_all.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
x_all.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
x_all.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
x_all.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
x_all.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
x_all.o: ../cryptlib.h
x_all.o: ../../include/openssl/rijndael-alg-fst.h
x_all.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_all.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_all.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_all.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
x_all.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
此差异已折叠。
此差异已折叠。
......@@ -106,7 +106,7 @@ tests: exe apps \
test_rmd test_rc2 test_rc4 test_rc5 test_bf test_cast \
test_rand test_bn test_enc test_x509 test_rsa test_crl test_sid \
test_gen test_req test_pkcs7 test_verify test_dh test_dsa \
test_ss test_ca test_ssl
test_ss test_ca test_ssl test_rd
apps:
@(cd ../apps; $(MAKE) CC='${CC}' CFLAG='${CFLAG}' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' all)
......@@ -229,6 +229,10 @@ test_ca:
sh ./testca; \
fi
test_rd: #$(RDTEST)
@echo "test Rijndael"
#./$(RDTEST)
lint:
lint -DLINT $(INCLUDES) $(SRC)>fluff
......@@ -317,6 +321,12 @@ $(METHTEST): $(METHTEST).o $(DLIBCRYPTO)
$(SSLTEST): $(SSLTEST).o $(DLIBSSL) $(DLIBCRYPTO)
$(CC) -o $(SSLTEST) $(CFLAGS) $(SSLTEST).o $(PEX_LIBS) $(LIBSSL) $(LIBCRYPTO) $(EX_LIBS)
#$(RDTEST).o: $(RDTEST).c
# $(CC) -c $(CFLAGS) -DINTERMEDIATE_VALUE_KAT -DTRACE_KAT_MCT $(RDTEST).c
#$(RDTEST): $(RDTEST).o $(DLIBCRYPTO)
# $(CC) -o $(RDTEST) $(CFLAGS) $(RDTEST).o $(PEX_LIBS) $(LIBCRYPTO) $(EX_LIBS)
# DO NOT DELETE THIS LINE -- make depend depends on it.
bftest.o: ../include/openssl/blowfish.h
......@@ -334,7 +344,8 @@ bntest.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
bntest.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
bntest.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
bntest.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
bntest.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
bntest.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
bntest.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
bntest.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
bntest.o: ../include/openssl/sha.h ../include/openssl/stack.h
bntest.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
......@@ -372,6 +383,7 @@ hmactest.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
hmactest.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
hmactest.o: ../include/openssl/opensslv.h ../include/openssl/rc2.h
hmactest.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
hmactest.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
hmactest.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
hmactest.o: ../include/openssl/safestack.h ../include/openssl/sha.h
hmactest.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
......@@ -411,6 +423,7 @@ ssltest.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
ssltest.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
ssltest.o: ../include/openssl/rand.h ../include/openssl/rc2.h
ssltest.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
ssltest.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
ssltest.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
ssltest.o: ../include/openssl/safestack.h ../include/openssl/sha.h
ssltest.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
......
......@@ -1872,3 +1872,4 @@ DSO_METHOD_vms 2462 EXIST::FUNCTION:
BIO_f_linebuffer 2463 EXIST:VMS:FUNCTION:
X509_print_ex 2464 EXIST::FUNCTION:
X509_print_ex_fp 2465 EXIST::FUNCTION:FP_API
EVP_rijndael_ecb 2466 EXIST::FUNCTION:
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册