From ee1bcc5e57b342bea71a84716ec268f12f660007 Mon Sep 17 00:00:00 2001
From: mtu <maxence.tury@ssi.gouv.fr>
Date: Mon, 25 Jan 2016 16:37:20 +0100
Subject: [PATCH] Insert DER test data inside x509.uts and move it from
 scapy/layers/ to test/ (also, remove obsolete X.509 tests from
 test/regression.uts

---
 scapy/layers/x509_uts_cert.der   | Bin 1302 -> 0 bytes
 scapy/layers/x509_uts_crl.der    | Bin 546 -> 0 bytes
 scapy/layers/x509_uts_rsakey.der | Bin 1191 -> 0 bytes
 test/regression.uts              |  98 -------------------------------
 {scapy/layers => test}/x509.uts  |  26 ++++----
 5 files changed, 12 insertions(+), 112 deletions(-)
 delete mode 100755 scapy/layers/x509_uts_cert.der
 delete mode 100644 scapy/layers/x509_uts_crl.der
 delete mode 100755 scapy/layers/x509_uts_rsakey.der
 rename {scapy/layers => test}/x509.uts (70%)

diff --git a/scapy/layers/x509_uts_cert.der b/scapy/layers/x509_uts_cert.der
deleted file mode 100755
index 52b2df9c07605ac287103ddef84d2da6f7795aed..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1302
zcmXqLVihuIV*a&&nTe5!iIZVVT!Hg*PVPbjUN%mxHjlRNyo`*jtPBQ?+YGr4IN6v(
zS=fY`+=2}G40u2s4q?`S#G=e%7@r-+7dH?E$#V(w`IZ)E6y@jVDmdpC73dkt8OVSn
zxP?XG5@7*;3c;yGWtqvT#fGW|${=}WVHr<v*D@o82t88+ONEfs;u3}A)S{Biw9Mqh
zl2k)=168;KIT^(yGP6_5jC4zY${cc`7V0GfEi{l5=QS`hFgG+dFgLa^wTu$yH8L|W
zHa38Ahpxw(7?qGCiIJ6oxrvdV!Jvtei>Zl`kzq!7mi^1ig0q)+dwScyS$vJzW7a{A
z`pw@?s=S+fe8zE3wTFS0j^fR^d%K^1Jk5N|e@6QRU9J6W%v)zZo|E&W^Jc5Nb3Tvr
zynP?EZojJC)2%N4NUB7>z|e)`;l=0Szt(>0ioT)Vy7$k`6ZwA_(pk1Fm@)s~l_w!_
zzva~q)J%_i;x&8uvqKu)XQIlM<;gp{`Yc`}5V?4|!?oUT=VrIEZHiSso)$F6w(0s8
zafhf+fiq_x)hc$}6#Mj?s-xNN4U3H4o_W8)=jEi+zNZYHKf9omsphjcNJ{2Io#q+g
z@LkIbpZ)*k-1jJ7beY*LUrRlvcc+$He*2ijUh-n<oj*U=&X`$$W@ch$WMEv}#3&C8
z5orTiV4{-cV-aH!`Fz9g-h}VZVlSODJ{uF(lRsU=(A%K#HAr5WrSY*r<AVmQY8E!`
zS<<+3$flPjq`VEvy0XG7tOm@CjQ^1n5iq9%6A>eW*}1!nd#mI-qmLVA#&4alW-HsQ
zgD<{%<zzE{IQZZy&+X<M>8Fy)=f#<)o_WcoI`dE0oLetu96EIUT~kI(^6H91|CR^6
zQ@=GO=t5ZEqshPHF5C4@>lK_JoN#i5m~Cyh`%L!gEBPMQD{Q)@J&M&-_-h#FNNwGH
zq%G%+!X@9J#;fOq@5#<Qks%?%#%mVq^yH6cQpvkg*S`<ij|cwqV0Baxetqu!=9pUF
zgfEwE1#a#(3y3|JU*DVL$R^b1`c=H&DOWA|9+Q7g&dV(K#eQ4F`tFBKV4ZYX?0EFc
t-EVXRw=lFZt_pWQ<ep-nVI=Lh`P#qv?rN8u6C-YvFcz+_whrI-2>_&=(T)HB

diff --git a/scapy/layers/x509_uts_crl.der b/scapy/layers/x509_uts_crl.der
deleted file mode 100644
index edcc11ba04500b2858497043a31719f7cfd4faac..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 546
zcmXqLVv;jxVr)0yW#iOp^Jx3d%gD&e%3u(0$Zf#M#vIDRCd?EXY$$FZ3gU1H^M$1r
zWd>)a=jkYT<|XSHnj4scB)En3oO2S3ixmtN0!ou|GLsboiZXK(iz*eIQ;SM6(=wA2
zOEUBG6dX%SGV+TuODe^A4a^J;4U7!HAPUGeH!w0ZH!?Q0G_{N}X#8fN$Rwb1$vf%D
z^d;hF^A?|&Q>A+XsLBKg4Gqmr%?wSWKuWA!?}eRaI(z4iUwN{U^p&eXC58s31{Q{v
zMn=XaU?q;R9cGQ93RfGN-Bv_Ss?Y%|F$Y?2W(u?qti;{2@&DhJ#*b5fzLq#t!}}4a
z#29FfrJ)5-nGsk?K}cQJqg^-3>fKk)6mX172P!c#urx9ThJb;A1z1TPckDfhPnKy-
z%lcE5ER;dcg}TMS!pJbnK#56^;X;T<f<*e|wWg=^dA-!9#(~rr8W|cIS{Rvu)SyNK
zb7Lce(#dbTWfv~BRXP5DgOcFp0=DR*p?8hT7R*rMNOs9Q@9(Z!K2xaWlH@vtDW`No
zW@R^CVzyWoHMLjkQR2DVl4ncRBh_lc9zJO(l=9rP>a1t<E&dh%&)IPOIl1=Oy%P>8
nJZhZE6SmLU8Nl4{Eir$?gH-+m8L9NAtw&V9a-TGA3VH?r!mzUy

diff --git a/scapy/layers/x509_uts_rsakey.der b/scapy/layers/x509_uts_rsakey.der
deleted file mode 100755
index 362897c346d254970c29bf98a7f2ec638abde3d7..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1191
zcmV;Y1X%kpf&`-i0RRGm0RaG*S86}$(-E7bOG!&V?4#BLNSeV2f3x<<B<`KZn8yhw
z;ZZq37lUoRi|6sn1KLlRhmb8QzXk)fnd6*n<cZmZM?-H6L!Q3yD%<LPyo)Cn;u>@x
za4|#(;nC+;`mOScTi7Rsz5Ln8Z~Opf1hk--pZ?V3R9^cZCcu1`UgS!fr{=;ai_BVf
zrfwfYMNFft5Lu&_K-P`+&YOh>vRxy`W>TCzg4gsHKw9!qnVZEbb3w9Q<<2ERHoLH*
zGVRRouuSQa%T3BK=jPBNX(mj)QW_laeksfoSGuQh=KuObj^b|>rZ(D5IW7Y3%BMN@
z@nQ#b=#||3_y){2JM#kq0|5X50)hbmead*2OWGJn|52AT#+3Z`!+=>JnTGK&4+$#k
zC!6$zj}R~fX~rX^BL#Xvf|M-S+NRx`9v9oZhG2@kXo3-ahI+uL+GL-ZBry-9L9E2?
zL*G<hoO1+=92RpwX1hF;@IXXt<`-$m-lOqe*RkLLSLTfZcY|MMR%50=da^|*JI|YU
zayU5k1z=G{y8ksUgplZWu+gtEw3Y2DK<V}!V@zR`In8|aU;;LPOCLi9d0G-t_ci<E
zTnl$HrAB;w)Acy+h6Vfd>HcV3M7U+VMq-w}oF~n}zLnYqo09gJo3@3YLY5fTS4&g(
zImNH&g`GNRHVBT)FcQhoyp~iU0)c@5$ii5|UwNAG<?&pxCvoJ(<Qi&>)-Q^oH4O@D
z52nmNqhZ+_9lhEGh#|5817<n$IacKhvOeO;uK|)vSeBpa#(5kJH_mAFiLj(!9^HC`
zT>S-HIw>XH(Lc&#v?yXth-}GbY+FSw;ZBJrRQs_>Ww@uB5{S#G6mpu^#V_zN0)c@5
z!a{qAGn6l;_<MO!xO68ayCOoDen0l?AoKf?riVGVuzY%7IO|Au(|BskRTclwfo^VE
zU}ct|2W5nH;4v5>(*A|g>vs7$orE`G_)eamp=fmv3DF{6v{|@i<CwrWS4d0TbH(M8
zJRi*;E^~Z73HGdjy9tyy>n;zTg>{{C0)c=*z$F3~%H#}1n*SK4DvuhV(q;oHLifx>
zYq<5ta)E+&C>_e%y2>Q=sMC9~c~OxYW^yf>doCM~&71T=S5ug{*a2^z_hUH6m#V$o
zh5Zst!ZCL{H7?1oHjO%pPLHF70^AcvdA#<4%nt7s_BY}x28bQi<R_1Sy67vi(Kvwu
zfq+u9cVGO2w4MXtozKn~HL8ralU`^u*KWkX+jKEd6*R4Y@t~yL7bfrZu9AEYH?Shi
z-%`H=!BaGn_6RY6^<zOVcg{-9hGGvq0Z>MzLPvNqzSF)uIm6UQ_J;bEND(xr<rH9j
z`nBr4Cs~CrNzf<p%af}O^7|mQrIfk>PaOh*fdIZx3N0N?VvXKM_i=WD0(K%<?hu1y
zzDfeb_+3=td@S0!fVnHkisbo=pNy(cSqNunMde!pi^&#*YJ0I`_a%(^y;{I%%h9uw
zwtBJBDPy6&t`{h2mt0_5cDEoRe`SL2k_Px75iNM^7N(v1eSUktI9BjUlviaJ?)SC0
F)JXZuN!9=W

diff --git a/test/regression.uts b/test/regression.uts
index af22f521..3cf4b298 100644
--- a/test/regression.uts
+++ b/test/regression.uts
@@ -540,103 +540,6 @@ assert(x.PDU.varbindlist[0].value == "172.31.19.2")
 assert(x.PDU.varbindlist[2].oid == "1.3.6.1.4.1.253.8.64.4.2.1.5.10.14130400")
 assert(x.PDU.varbindlist[2].value == 1)
 
-############
-############
-+ X509 tests
-
-= X509 certificate assembling
-~ X509 ASN1
-c=X509Cert( pubkey='\x00'+str(ASN1_SEQUENCE([ASN1_INTEGER(1),ASN1_INTEGER(2)])), signature="xxxxxx")
-c.show()
-str(c) == str(X509Cert(str(c)))
-
-= Small X509 certificate disassembling
-~ X509 ASN1
-* This cert has neither the version field nor X509v3 extensions
-small="""MIIB+jCCAWMCAgGjMA0GCSqGSIb3DQEBBAUAMEUxCzAJBgNVBAYTAlVTMRgw
-FgYDVQQKEw9HVEUgQ29ycG9yYXRpb24xHDAaBgNVBAMTE0dURSBDeWJlclRy
-dXN0IFJvb3QwHhcNOTYwMjIzMjMwMTAwWhcNMDYwMjIzMjM1OTAwWjBFMQsw
-CQYDVQQGEwJVUzEYMBYGA1UEChMPR1RFIENvcnBvcmF0aW9uMRwwGgYDVQQD
-ExNHVEUgQ3liZXJUcnVzdCBSb290MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCB
-iQKBgQC45k+625h8cXyvRLfTD0bZZOWTwUKOx7pJjTUteueLveUFMVnGsS8K
-DPufpz+iCWaEVh43KRuH6X4MypqfpX/1FZSj1aJGgthoTNE3FQZor734sLPw
-KfWVWgkWYXcKIiXUT0Wqx73llt/51KiOQswkwB6RJ0q1bQaAYznEol44AwID
-AQABMA0GCSqGSIb3DQEBBAUAA4GBABKzdcZfHeFhVYAA1IFLezEPI2PnPfMD
- +fQ2qLvZ46WXTeorKeDWanOB5sCJo9Px4KWlIjeaY8JIILTbcuPI9tl8vrGv
-U9oUtCG41tWW4/5ODFlitppK+ULdjG+BqXH/9ApybW1EDp3zdHSo1TRJ6V6e
-6bR64eVaH4QwnNOfpSXY """.decode("base64")
-c = X509Cert(small)
-c.show()
-assert( str(c) == small )
-assert( c.version == None )
-assert( c.sn == 419 )
-assert( "/".join(rdn.value.val for rdn in c.issuer) == "US/GTE Corporation/GTE CyberTrust Root")
-assert( c.not_after == '060223235900Z' )
-assert( c.x509v3ext == None )
-assert( c.signature == '\x00\x12\xb3u\xc6_\x1d\xe1aU\x80\x00\xd4\x81K{1\x0f#c\xe7=\xf3\x03\xf9\xf46\xa8\xbb\xd9\xe3\xa5\x97M\xea+)\xe0\xd6js\x81\xe6\xc0\x89\xa3\xd3\xf1\xe0\xa5\xa5"7\x9ac\xc2H \xb4\xdbr\xe3\xc8\xf6\xd9|\xbe\xb1\xafS\xda\x14\xb4!\xb8\xd6\xd5\x96\xe3\xfeN\x0cYb\xb6\x9aJ\xf9B\xdd\x8co\x81\xa9q\xff\xf4\nrmmD\x0e\x9d\xf3tt\xa8\xd54I\xe9^\x9e\xe9\xb4z\xe1\xe5Z\x1f\x840\x9c\xd3\x9f\xa5%\xd8' )
-
-
-= Big X509 certificate disassembling
-~ X509 ASN1
-small="""MIIIODCCB6GgAwIBAgIBADANBgkqhkiG9w0BAQUFADCCAR4xCzAJBgNVBAYT
-AkVTMRIwEAYDVQQIEwlCYXJjZWxvbmExEjAQBgNVBAcTCUJhcmNlbG9uYTEu
-MCwGA1UEChMlSVBTIEludGVybmV0IHB1Ymxpc2hpbmcgU2VydmljZXMgcy5s
-LjErMCkGA1UEChQiaXBzQG1haWwuaXBzLmVzIEMuSS5GLiAgQi02MDkyOTQ1
-MjE0MDIGA1UECxMrSVBTIENBIFRpbWVzdGFtcGluZyBDZXJ0aWZpY2F0aW9u
-IEF1dGhvcml0eTE0MDIGA1UEAxMrSVBTIENBIFRpbWVzdGFtcGluZyBDZXJ0
-aWZpY2F0aW9uIEF1dGhvcml0eTEeMBwGCSqGSIb3DQEJARYPaXBzQG1haWwu
-aXBzLmVzMB4XDTAxMTIyOTAxMTAxOFoXDTI1MTIyNzAxMTAxOFowggEeMQsw
-CQYDVQQGEwJFUzESMBAGA1UECBMJQmFyY2Vsb25hMRIwEAYDVQQHEwlCYXJj
-ZWxvbmExLjAsBgNVBAoTJUlQUyBJbnRlcm5ldCBwdWJsaXNoaW5nIFNlcnZp
-Y2VzIHMubC4xKzApBgNVBAoUImlwc0BtYWlsLmlwcy5lcyBDLkkuRi4gIEIt
-NjA5Mjk0NTIxNDAyBgNVBAsTK0lQUyBDQSBUaW1lc3RhbXBpbmcgQ2VydGlm
-aWNhdGlvbiBBdXRob3JpdHkxNDAyBgNVBAMTK0lQUyBDQSBUaW1lc3RhbXBp
-bmcgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxHjAcBgkqhkiG9w0BCQEWD2lw
-c0BtYWlsLmlwcy5lczCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAvLju
-VqWajOY2ycJioGaBjRrVetJznw6EZLqVtJCneK/K/lRhW86yIFcBrkSSQxA4
-Efdo/BdApWgnMjvEp+ZCccWZ73b/K5Uk9UmSGGjKALWkWi9uy9YbLA1UZ2t6
-KaFYq6JaANZbuxjC3/YeE1Z2m6Vo4pjOxgOKNNtMg0GmqaMCAwEAAaOCBIAw
-ggR8MB0GA1UdDgQWBBSL0BBQCYHynQnVDmB4AyKiP8jKZjCCAVAGA1UdIwSC
-AUcwggFDgBSL0BBQCYHynQnVDmB4AyKiP8jKZqGCASakggEiMIIBHjELMAkG
-A1UEBhMCRVMxEjAQBgNVBAgTCUJhcmNlbG9uYTESMBAGA1UEBxMJQmFyY2Vs
-b25hMS4wLAYDVQQKEyVJUFMgSW50ZXJuZXQgcHVibGlzaGluZyBTZXJ2aWNl
-cyBzLmwuMSswKQYDVQQKFCJpcHNAbWFpbC5pcHMuZXMgQy5JLkYuICBCLTYw
-OTI5NDUyMTQwMgYDVQQLEytJUFMgQ0EgVGltZXN0YW1waW5nIENlcnRpZmlj
-YXRpb24gQXV0aG9yaXR5MTQwMgYDVQQDEytJUFMgQ0EgVGltZXN0YW1waW5n
-IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MR4wHAYJKoZIhvcNAQkBFg9pcHNA
-bWFpbC5pcHMuZXOCAQAwDAYDVR0TBAUwAwEB/zAMBgNVHQ8EBQMDB/+AMGsG
-A1UdJQRkMGIGCCsGAQUFBwMBBggrBgEFBQcDAgYIKwYBBQUHAwMGCCsGAQUF
-BwMEBggrBgEFBQcDCAYKKwYBBAGCNwIBFQYKKwYBBAGCNwIBFgYKKwYBBAGC
-NwoDAQYKKwYBBAGCNwoDBDARBglghkgBhvhCAQEEBAMCAAcwGgYDVR0RBBMw
-EYEPaXBzQG1haWwuaXBzLmVzMBoGA1UdEgQTMBGBD2lwc0BtYWlsLmlwcy5l
-czBHBglghkgBhvhCAQ0EOhY4VGltZXN0YW1waW5nIENBIENlcnRpZmljYXRl
-IGlzc3VlZCBieSBodHRwOi8vd3d3Lmlwcy5lcy8wKQYJYIZIAYb4QgECBBwW
-Gmh0dHA6Ly93d3cuaXBzLmVzL2lwczIwMDIvMEAGCWCGSAGG+EIBBAQzFjFo
-dHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAyL2lwczIwMDJUaW1lc3RhbXBpbmcu
-Y3JsMEUGCWCGSAGG+EIBAwQ4FjZodHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAy
-L3Jldm9jYXRpb25UaW1lc3RhbXBpbmcuaHRtbD8wQgYJYIZIAYb4QgEHBDUW
-M2h0dHA6Ly93d3cuaXBzLmVzL2lwczIwMDIvcmVuZXdhbFRpbWVzdGFtcGlu
-Zy5odG1sPzBABglghkgBhvhCAQgEMxYxaHR0cDovL3d3dy5pcHMuZXMvaXBz
-MjAwMi9wb2xpY3lUaW1lc3RhbXBpbmcuaHRtbDB/BgNVHR8EeDB2MDegNaAz
-hjFodHRwOi8vd3d3Lmlwcy5lcy9pcHMyMDAyL2lwczIwMDJUaW1lc3RhbXBp
-bmcuY3JsMDugOaA3hjVodHRwOi8vd3d3YmFjay5pcHMuZXMvaXBzMjAwMi9p
-cHMyMDAyVGltZXN0YW1waW5nLmNybDAvBggrBgEFBQcBAQQjMCEwHwYIKwYB
-BQUHMAGGE2h0dHA6Ly9vY3NwLmlwcy5lcy8wDQYJKoZIhvcNAQEFBQADgYEA
-ZbrBzAAalZHK6Ww6vzoeFAh8+4Pua2JR0zORtWB5fgTYXXk36MNbsMRnLWha
-sl8OCvrNPzpFoeo2zyYepxEoxZSPhExTCMWTs/zif/WN87GphV+I3pGW7hdb
-rqXqcGV4LCFkAZXOzkw+UPS2Wctjjba9GNSHSl/c7+lW8AoM6HU= """.decode("base64")
-c = X509Cert(small)
-c.show()
-assert( str(c) == small )
-assert( c.version == 2 )
-assert( c.sn == ASN1_NULL(0) )
-assert( "/".join(rdn.value.val for rdn in c.issuer if isinstance(rdn.value,ASN1_PRINTABLE_STRING)) == "ES/Barcelona/Barcelona/IPS Internet publishing Services s.l./IPS CA Timestamping Certification Authority/IPS CA Timestamping Certification Authority")
-assert( c.not_after == '251227011018Z' )
-assert( len(c.x509v3ext) == 16 )
-assert( c.signature == '\x00e\xba\xc1\xcc\x00\x1a\x95\x91\xca\xe9l:\xbf:\x1e\x14\x08|\xfb\x83\xeekbQ\xd33\x91\xb5`y~\x04\xd8]y7\xe8\xc3[\xb0\xc4g-hZ\xb2_\x0e\n\xfa\xcd?:E\xa1\xea6\xcf&\x1e\xa7\x11(\xc5\x94\x8f\x84LS\x08\xc5\x93\xb3\xfc\xe2\x7f\xf5\x8d\xf3\xb1\xa9\x85_\x88\xde\x91\x96\xee\x17[\xae\xa5\xeapex,!d\x01\x95\xce\xceL>P\xf4\xb6Y\xcbc\x8d\xb6\xbd\x18\xd4\x87J_\xdc\xef\xe9V\xf0\n\x0c\xe8u' )
-
-
-
 
 ############
 ############
@@ -658,7 +561,6 @@ dns_ans = sr1(IP(dst="resolver1.opendns.com")/UDP()/DNS(rd=1,qd=DNSQR(qname="www
 DNS in dns_ans
 
 
-
 ############
 ############
 + More complex tests
diff --git a/scapy/layers/x509.uts b/test/x509.uts
similarity index 70%
rename from scapy/layers/x509.uts
rename to test/x509.uts
index 1eb28d69..3c0cb430 100644
--- a/scapy/layers/x509.uts
+++ b/test/x509.uts
@@ -1,18 +1,14 @@
-# load me with
-# python scapy/tools/UTscapy.py -m scapy/layers/x509 -t scapy/layers/x509.uts -F
-#
-## This file is part of Scapy
-## See http://www.secdev.org/projects/scapy for more informations
-## Author: Maxence Tury <maxence.tury@ssi.gouv.fr>
-## This program is published under a GPLv2 license
-
-# X509 module - Regression Test Campaign
+# X.509 unit tests
+# 
+# Launch me with:
+# sudo bash test/run_tests -t test/x509.uts -F
 
 ########### Key class ###############################################
 
 + Private RSA & ECDSA keys class tests
 = Key class : Importing DER encoded RSA private key
-x=RSAPrivateKey(open("scapy/layers/x509_uts_rsakey.der").read())
+k='MIIEowIBAAKCAQEAmFdqP+nTEZukS0lLP+yj1gNImsEIf7P2ySTunceYxwkm4VE5QReDbb2L5/HL\nA9pPmIeQLSq/BgO1meOcbOSJ2YVHQ28MQ56+8Crb6n28iycX4hp0H3AxRAjh0edX+q3yilvYJ4W9\n/NnIb/wAZwS0oJif/tTkVF77HybAfJde5Eqbp+bCKIvMWnambh9DRUyjrBBZo5dA1o32zpuFBrJd\nI8dmUpw9gtf0F0Ba8lGZm8Uqc0GyXeXOJUE2u7CiMu3M77BM6ZLLTcow5+bQImkmTL1SGhzwfinM\nE1e6p3Hm//pDjuJvFaY22k05LgLuyqc59vFiB3Toldz8+AbMNjvzAwIDAQABAoIBAH3KeJZL2hhI\n/1GXNMaU/PfDgFkgmYbxMA8JKusnm/SFjxAwBGnGI6UjBXpBgpQs2Nqm3ZseF9u8hmCKvGiCEX2G\nesCo2mSfmSQxD6RBrMTuQ99UXpxzBIscFnM/Zrs8lPBARGzmF2nI3qPxXtex4ABX5o0Cd4NfZlZj\npj96skUoO8+bd3I4OPUFYFFFuv81LoSQ6Hew0a8xtJXtKkDp9h1jTGGUOc189WACNoBLH0MGeVoS\nUfc1++RcC3cypUZ8fNP1OO6GBfv06f5oXES4ZbxGYpa+nCfNwb6V2gWbkvaYm7aFn0KWGNZXS1P3\nOcWv6IWdOmg2CI7MMBLJ0LyWVCECgYEAyMJYw195mvHl8VyxJ3HkxeQaaozWL4qhNQ0Kaw+mzD+j\nYdkbHb3aBYghsgEDZjnyOVblC7I+4smvAZJLWJaf6sZ5HAw3zmj1ibCkXx7deoRc/QVcOikl3dE/\nymO0KGJNiGzJZmxbRS3hTokmVPuxSWW4p5oSiMupFHKa18Uv8DECgYEAwkJ7iTOUL6b4e3lQuHQn\nJbsiQpd+P/bsIPP7kaaHObewfHpfOOtIdtN4asxVFf/PgW5uWmBllqAHZYR14DEYIdL+hdLrdvk5\nnYQ3YfhOnp+haHUPCdEiXrRZuGXjmMA4V0hL3HPF5ZM8H80fLnN8Pgn2rIC7CZQ46y4PnoV1nXMC\ngYBBwCUCF8rkDEWa/ximKo8aoNJmAypC98xEa7j1x3KBgnYoHcrbusok9ajTe7F5UZEbZnItmnsu\nG4/Nm/RBV1OYuNgBb573YzjHl6q93IX9EkzCMXc7NS7JrzaNOopOj6OFAtwTR3m89oHMDu8W9jfi\nKgaIHdXkJ4+AuugrstE4gQKBgFK0d1/8g7SeA+Cdz84YNaqMt5NeaDPXbsTA23QxUBU0rYDxoKTd\nFybv9a6SfA83sCLM31K/A8FTNJL2CDGA9WNBL3fOSs2GYg88AVBGpUJHeDK+0748OcPUSPaG+pVI\nETSn5RRgffq16r0nWYUvSdAn8cuTqw3y+yC1pZS6AU8dAoGBAL5QCi0dTWKN3kf3cXaCAnYiWe4Q\ng2S+SgLE+F1U4Xws2rqAuSvIiuT5i5+Mqk9ZCGdoReVbAovJFoRqe7Fj9yWM+b1awGjL0bOTtnqx\n0iljob6uFyhpl1xgW3a3ICJ/ZYLvkgb4IBEteOwWpp37fX57vzhW8EmUV2UX7ve1uNRI'.decode('base64')
+x=RSAPrivateKey(k)
 
 = Key class : key version
 x.version == ASN1_INTEGER(0L)
@@ -46,10 +42,11 @@ x.coefficient == ASN1_INTEGER(13364209135497709980522851534062695694375984073722
 
 + X509_Cert class tests
 = Cert class : Importing DER encoded X.509 Certificate with RSA public key
-x=X509_Cert(open("scapy/layers/x509_uts_cert.der").read())
+c='MIIFEjCCA/qgAwIBAgIJALRecEPnCQtxMA0GCSqGSIb3DQEBBQUAMIG2MQswCQYDVQQGEwJGUjEO\nMAwGA1UECBMFUGFyaXMxDjAMBgNVBAcTBVBhcmlzMRcwFQYDVQQKEw5NdXNocm9vbSBDb3JwLjEe\nMBwGA1UECxMVTXVzaHJvb20gVlBOIFNlcnZpY2VzMSUwIwYDVQQDExxJS0V2MiBYLjUwOSBUZXN0\nIGNlcnRpZmljYXRlMScwJQYJKoZIhvcNAQkBFhhpa2V2Mi10ZXN0QG11c2hyb29tLmNvcnAwHhcN\nMDYwNzEzMDczODU5WhcNMjYwMzMwMDczODU5WjCBtjELMAkGA1UEBhMCRlIxDjAMBgNVBAgTBVBh\ncmlzMQ4wDAYDVQQHEwVQYXJpczEXMBUGA1UEChMOTXVzaHJvb20gQ29ycC4xHjAcBgNVBAsTFU11\nc2hyb29tIFZQTiBTZXJ2aWNlczElMCMGA1UEAxMcSUtFdjIgWC41MDkgVGVzdCBjZXJ0aWZpY2F0\nZTEnMCUGCSqGSIb3DQEJARYYaWtldjItdGVzdEBtdXNocm9vbS5jb3JwMIIBIjANBgkqhkiG9w0B\nAQEFAAOCAQ8AMIIBCgKCAQEAmFdqP+nTEZukS0lLP+yj1gNImsEIf7P2ySTunceYxwkm4VE5QReD\nbb2L5/HLA9pPmIeQLSq/BgO1meOcbOSJ2YVHQ28MQ56+8Crb6n28iycX4hp0H3AxRAjh0edX+q3y\nilvYJ4W9/NnIb/wAZwS0oJif/tTkVF77HybAfJde5Eqbp+bCKIvMWnambh9DRUyjrBBZo5dA1o32\nzpuFBrJdI8dmUpw9gtf0F0Ba8lGZm8Uqc0GyXeXOJUE2u7CiMu3M77BM6ZLLTcow5+bQImkmTL1S\nGhzwfinME1e6p3Hm//pDjuJvFaY22k05LgLuyqc59vFiB3Toldz8+AbMNjvzAwIDAQABo4IBHzCC\nARswHQYDVR0OBBYEFPPYTt6Q9+Zd0s4zzVxWjG+XFDFLMIHrBgNVHSMEgeMwgeCAFPPYTt6Q9+Zd\n0s4zzVxWjG+XFDFLoYG8pIG5MIG2MQswCQYDVQQGEwJGUjEOMAwGA1UECBMFUGFyaXMxDjAMBgNV\nBAcTBVBhcmlzMRcwFQYDVQQKEw5NdXNocm9vbSBDb3JwLjEeMBwGA1UECxMVTXVzaHJvb20gVlBO\nIFNlcnZpY2VzMSUwIwYDVQQDExxJS0V2MiBYLjUwOSBUZXN0IGNlcnRpZmljYXRlMScwJQYJKoZI\nhvcNAQkBFhhpa2V2Mi10ZXN0QG11c2hyb29tLmNvcnCCCQC0XnBD5wkLcTAMBgNVHRMEBTADAQH/\nMA0GCSqGSIb3DQEBBQUAA4IBAQA2zt0BvXofiVvHMWlftZCstQaawej1SmxrAfDB4NUM24NsG+UZ\nI88XA5XM6QolmfyKnNromMLC1+6CaFxjq3jC/qdS7ifalFLQVo7ik/te0z6Olo0RkBNgyagWPX2L\nR5kHe9RvSDuoPIsbSHMmJA98AZwatbvEhmzMINJNUoHVzhPeHZnIaBgUBg02XULk/ElidO51Rf3g\nh8dR/kgFQSQT687vs1x9TWD00z0Q2bs2UF3Ob3+NYkEGEo5F9RePQm0mY94CT2xs6WpHo060Fo7f\nVpAFktMWx1vpu+wsEbQAhgGqV0fCR2QwKDIbTrPW/p9HJtJDYVjYdAFxr3s7V77y'.decode('base64')
+x=X509_Cert(c)
 
 = Cert class : Rebuild certificate
-str(x) == open("scapy/layers/x509_uts_cert.der").read()
+str(x) == c
 
 = Cert class : Version
 tbs = x.tbsCertificate
@@ -129,10 +126,11 @@ str(X509_Cert(str(X509_Cert()))) == str(X509_Cert())
 
 + X509_CRL class tests
 = CRL class : Importing DER encoded X.509 CRL
-x=X509_CRL(open("scapy/layers/x509_uts_crl.der").read())
+c='MIICHjCCAYcwDQYJKoZIhvcNAQEFBQAwXzELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWdu\nLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAxIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0\naG9yaXR5Fw0wNjExMDIwMDAwMDBaFw0wNzAyMTcyMzU5NTlaMIH2MCECECzSS2LEl6QXzW6jyJx6\nLcgXDTA0MDQwMTE3NTYxNVowIQIQOkXeVssCzdzcTndjIhvU1RcNMDEwNTA4MTkyMjM0WjAhAhBB\nXYg2gRUg1YCDRqhZkngsFw0wMTA3MDYxNjU3MjNaMCECEEc5gf/9hIHxlfnrGMJ8DfEXDTAzMDEw\nOTE4MDYxMlowIQIQcFR+auK62HZ/R6mZEEFeZxcNMDIwOTIzMTcwMDA4WjAhAhB+C13eGPI5ZoKm\nj2UiOCPIFw0wMTA1MDgxOTA4MjFaMCICEQDQVEhgGGfTrTXKLw1KJ5VeFw0wMTEyMTExODI2MjFa\nMA0GCSqGSIb3DQEBBQUAA4GBACLJ9rsdoaU9JMf/sCIRs3AGW8VV3TN2oJgiCGNEac9PRyV3mRKE\n0hmuIJTKLFSaa4HSAzimWpWNKuJhztsZzXUnWSZ8VuHkgHEaSbKqzUlb2g+o/848CvzJrcbeyEBk\nDCYJI5C3nLlQA49LGJ+w4GUPYBwaZ+WFxCX1C8kzglLm'.decode('base64')
+x=X509_CRL(c)
 
 = CRL class : Rebuild crl
-str(x) == open("scapy/layers/x509_uts_crl.der").read()
+str(x) == c
 
 = CRL class : Version
 tbs = x.tbsCertList
-- 
GitLab