fixed z85 encoding overflow bug, fixed signature code on big-endian systems.

This commit is contained in:
TLINDEN
2013-11-19 17:17:30 +01:00
parent 314dbde0b9
commit 80ec5014a8
17 changed files with 203 additions and 153 deletions

View File

@@ -63,7 +63,7 @@ typedef unsigned int qbyte; // Quad byte = 32 bits
#define PCP_VAULT_VERSION 2
// sigs
#define PCP_SIG_VERSION 1
#define PCP_SIG_VERSION 2
char *PCP_ERR;
byte PCP_ERRSET;

View File

@@ -37,10 +37,10 @@ extern "C" {
#include "key.h"
struct _pcp_sig_t {
byte edsig[crypto_sign_BYTES];
char id[17];
long ctime;
uint64_t ctime;
uint32_t version;
byte edsig[crypto_hash_sha256_BYTES + crypto_sign_BYTES];
};
typedef struct _pcp_sig_t pcp_sig_t;
@@ -55,6 +55,8 @@ pcp_sig_t *sig2be(pcp_sig_t *k);
pcp_sig_t *pcp_ed_newsig(unsigned char *hash, char *id);
void pcp_dumpsig(pcp_sig_t *sig);
#ifdef __cplusplus
}
#endif

View File

@@ -32,7 +32,7 @@ size_t pcp_sodium_box(unsigned char **cipher,
unsigned char *pad_clear;
unsigned char *pad_cipher;
size_t ciphersize = (clearsize + crypto_box_ZEROBYTES) - crypto_box_BOXZEROBYTES; // $s + 32 -16
size_t ciphersize = (clearsize + crypto_box_ZEROBYTES) - crypto_box_BOXZEROBYTES;
pad_cipher = ucmalloc(crypto_box_ZEROBYTES + clearsize);
pcp_pad_prepend(&pad_clear, cleartext, crypto_box_ZEROBYTES, clearsize);

View File

@@ -72,20 +72,28 @@ pcp_sig_t *pcp_ed_newsig(unsigned char *hash, char *id) {
pcp_sig_t *sig = ucmalloc(sizeof(pcp_sig_t));
sig->version = PCP_SIG_VERSION;
sig->ctime = (long)time(0);
memcpy(sig->edsig, hash, crypto_hash_sha256_BYTES + crypto_sign_BYTES);
memcpy(sig->edsig, hash, crypto_sign_BYTES);
memcpy(sig->id, id, 17);
return sig;
}
pcp_sig_t *sig2native(pcp_sig_t *s) {
#ifdef __BIG_ENDIAN
return s;
#else
s->version = be32toh(s->version);
s->ctime = be64toh(s->ctime);
return s;
#endif
}
pcp_sig_t *sig2be(pcp_sig_t *s) {
#ifdef __BIG_ENDIAN
return s;
#else
s->version = htobe32(s->version);
s->ctime = htobe64(s->ctime);
return s;
#endif
}

View File

@@ -102,22 +102,47 @@ char *pcp_z85_encode(unsigned char *raw, size_t srclen, size_t *dstlen) {
char *z85 = ucmalloc(zlen);
z85 = zmq_z85_encode(z85, padded, outlen);
// make it a 72 chars wide block
blocklen = strlen(z85) + ((strlen(z85) / 72) * 2) + 1;
blocklen = (zlen + ((zlen / 72) * 2)) + 1;
char *z85block = ucmalloc(blocklen);
//fprintf(stderr, "zlen: %d, outlen: %d, srclen: %d, blocklen: %d\n",
// zlen, outlen, srclen, blocklen);
pos = b = 0;
/*
for(i=0; i<zlen; ++i) {
if(pos >= 71) {
z85block[b++] = '\r';
z85block[b++] = '\n';
*z85block++ = '\r';
*z85block++ = '\n';
pos = 1;
}
else {
pos++;
}
z85block[b++] = z85[i];
*z85block++ = z85[i];
}
*/
char *z = &z85[0];
char *B = &z85block[0];
while(*z != '\0') {
if(pos >= 71) {
*B++ = '\r';
*B++ = '\n';
pos = 1;
}
else {
pos++;
}
*B++ = *z++;
}
*B = '\0';
//fprintf(stderr, "z85block len: %d\n", blocklen, strlen(z85block));
//fprintf(stderr, "z85block: <%s>\n", z85block);
*dstlen = blocklen;
free(z85);

View File

@@ -124,7 +124,7 @@
.\" ========================================================================
.\"
.IX Title "PCP1 1"
.TH PCP1 1 "2013-11-18" "PCP 0.1.5" "USER CONTRIBUTED DOCUMENTATION"
.TH PCP1 1 "2013-11-19" "PCP 0.1.5" "USER CONTRIBUTED DOCUMENTATION"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l

View File

@@ -97,6 +97,10 @@ int pcpsign(char *infile, char *outfile, char *recipient, char *passwd) {
size_t zlen;
pcp_sig_t *signature = pcp_ed_sign(input, inputBufSize, secret);
// scip
//printf("sigsize: %d\n", (int)sizeof(pcp_sig_t));
//pcp_dumpsig(signature);
if(signature == NULL)
goto errs5;
@@ -226,3 +230,15 @@ int pcpverify(char *infile, char *sigfile) {
errv1:
return 1;
}
void pcp_dumpsig(pcp_sig_t *sig) {
printf(" ed: ");
pcpprint_bin(stdout, sig->edsig, crypto_sign_BYTES);printf("\n");
printf(" id: %s\n", sig->id);
printf(" ctime: %ld\n", sig->ctime);
printf("version: %04x\n", sig->version);
}

View File

@@ -3,33 +3,33 @@
Cipher: CURVE25519-ED25519-SALSA20-POLY1305
Owner: Bart
Mail: bart@local
Key-ID: 0x7AEFC16D88E43C2B
Public-Key: 1e2fw+W4a9:aMM[Z0fQ)4Vn!i}+SRl75j-AHe?mf2MK&8
Creation Time: 2013-11-19T09:54:59
Checksum: 55:DC:88:01:EE:69:EA:C5:02:B6:A8:22:36:50:A1:CC
EB:73:3E:EC:2D:74:FC:D9:B2:10:D3:B5:D9:16:72:32
Serial Number: 0x91FEE742
Key-ID: 0x9AD180B48F2746E7
Public-Key: 0$U$)i[>V06d$n&N6ehq2.#]UW$MQy8-MrNt!j/uu&Qfb
Creation Time: 2013-11-19T14:56:12
Checksum: 06:95:B5:78:15:E4:F7:DB:34:B2:02:ED:B5:3F:C9:6D
4F:20:1F:94:19:27:32:31:7C:E2:8F:A4:C4:30:29:12
Serial Number: 0xEBBF8898
Key Version: 0x00000004
Random Art ID: +----------------+
| o |
| . + |
|. . . . . |
| o . . |
|= . . . |
| * o . |
|. . . |
| |
| |
| |
| o|
| . o .o.|
| . o*.. |
| =..+ |
| +o |
+----------------+
1e2fw+W4a9:aMM[Z0fQ)4Vn!i}+SRl75j-AHe?mf2MK&ZM}j&L{OmyZyc!^/]nyFZz+T:qL
vB%cC0&as:WfARBo16v8cSVxh?6B9Sftn.qhoEK&Iwi6k*mbP00jw5fF5%DtUK<-hFa+uXZ
y>?CZ.lf3oACxnaseq+#cXwmxVJnT*84.L[5OLiq7JQTA:&U[p.d5Y}g]Pb:EA*0TzS3dbD
@!Z-l>ahp2fW!JLt<toLkf>=TVm7Pcf.arNYOK[bqdNQUe4J8>D6B/?P(CQ[>&^:ZNxHf22
bVe>-IO?]/mQy2cOOZJjZTIW!CdX-NbXKsK+pmxm.y<:-ArM]@&c/wHB<JTZd4UUp(>CX[s
KYObJC34eS+tPTc:Kiu%)!N)G6(9dA^W4NasM9Ks<0q>?vQTq0kX$vGvqC]z-v<%rEB.&ny
P:=z)T>0!ruz&gJ<CYJ&jda2Q<0AF5#!CTG-#7zQek&JTV1?RnNDSldf&FF0r=n3m*zeG!6
O8wpihb[a{gWORZ0eB8v6M%7n^QBMPPCdgP6d.ojX#q1X@Xbd0:d96Yp8}Cl-3f431k?23b
h/3qKQyuhq*}>X.h&+{MH>@XO2WPj[kd:]c&aKAaK]upf*v)QHy]OjPQ$WwvI^5W2TnRCyG
sGO4TEK8tLXrW!uNi?DG/jL5le<:ib:acObU.ukvS/@.]Kqf4i(ktCy*saPQsfoT=3Cx@be
e3U9$)IN37k$amgf/zAVi7kUWlOZ$d0@@r308!.5v/MGe1D&YDli3#=
0$U$)i[>V06d$n&N6ehq2.#]UW$MQy8-MrNt!j/uu]Y@S75-O9Mv]$?.q^!NtEu4[3ULQ*3
Vo-nB)uSVbsk*VBo0GfGcp5NMsb^MqUj3:(i<P.9.n&LRzz{w]Q?f9-PYZCwtWU21oZaNa=
j^kQei@&!=*NpwtOrV-QzR1zND=Egb92!@t(IDpLVbnaV*dHm*b{rFgz45&oWV9=#/{jqI0
cV2.>8nz(cq3H6.w60rb<yn)?!OWkT9TDJx[)GF3AmGjOAvnQ*nz]bMa5/{00gk2NW.gXF*
3tKEn0S.s{H(+w>[8w#)?kG=ixxk.XFGa/pI9%^px=>Gl+ou22k)0+pTT*S6#IoIK3Ix#)L
Pr3<4W!(KgAU5yvR/Ep]g.t):??2QC*!fRka&uG!ojG2zvQTq0kX$vGvqC}NxLDX7cR3T@/
ldGZoc+WNkcGX0k}d2Kh?H.ra6J=^vMW(p>Fy}FnM)ce@b>E*/EsTFQ}C4J&mpjX.KU7#?j
OZKaHWA76Y>1VHsv0H9BV?cKr9J.r3*r9ps<S5@}>$j-9>p1t6I=F3*xOLyH*K2Y7sL-vBz
It/w[a<NuL1jpypjWP3GyZHZUi$+ns!)DnD(raKG^%R}SO)G0jf9EX}O2p<EA#nl<mT<TVz
JC$}A)+lZWm4P.w]/Z$EO[H0STPtumZ8w&Q)Ai9&j]55oJoBh:(iud<gmkEvQOb]Z.eD]Ve
.=p^SSp(@Ck$0B!fHvPQmLV[VhBPL80@@r308!.(}#uY%1NA*UM&E9^
------ END PCP PUBLICKEY ------

View File

@@ -3,33 +3,33 @@
Cipher: CURVE25519-ED25519-SALSA20-POLY1305
Owner: Alicia
Mail: alicia@local
Key-ID: 0x7BDF786564A94A60
Public-Key: 1d10ok&9wTrr(Qb7}b$E3%Xzt0oCfQ)6Q$byko!{iSGcW
Creation Time: 2013-11-19T09:54:59
Checksum: C0:18:A5:2A:A4:55:D0:CB:EA:7C:83:5E:D0:54:40:79
FB:0C:06:5D:18:CA:5B:03:E5:C7:96:7A:B8:50:01:33
Serial Number: 0x96DA9F38
Key-ID: 0x23E0082C8250DB56
Public-Key: 1j-}eBc7.!-B{7%2E<jV8]me1R=A)%E*<A8H*Qbqa]?Py
Creation Time: 2013-11-19T14:56:11
Checksum: 86:A5:27:8C:C8:8E:2D:3E:14:36:6C:14:B9:1F:FB:2B
21:20:E7:D6:7C:E3:B1:C8:3B:49:3F:7E:07:5A:D3:ED
Serial Number: 0xC82855BB
Key Version: 0x00000004
Random Art ID: +----------------+
| ..o...... |
| o . o |
| o o |
| . . |
| * . |
| . + . |
| . |
| |
| o oo |
| . +o.o|
| . .+ |
| . ooo|
| +o|
| . |
| |
+----------------+
1d10ok&9wTrr(Qb7}b$E3%Xzt0oCfQ)6Q$byko!{i)2/AJJ=bY7!p$vpJ7^aTd7dB1GOYNR
/on#Dp{<f<uWP@v}/uK<=5U$!eSzE&iK*giK5rJy.&Eamow4qLRfRZ>rWjZZ>Fz*LLy$R.o
oV5/L9*Z=0i!C0S2[qh.mR^mgmQ&)![&<+&%vyM^J<fDcxKX!BwD5xRO2OX12jOsS[YuH:N
P@K1C$8Fs0]o*/A!fZE$R-}x/u3*Ze&@F{!!B&C]AKGsN+ZeHGc%GJ)5r4v:u*Bxpe7m5X2
xq:e5^F#b{c&nC-j[x0eZoX+-2eir6.ARxh!4a}IoULk(lr2{y]!o}JDT-SVG78A%R5uCeB
P.r^Ay[+K4p*uHTs*rG%PBJS7o:yTChC>I{sd^{Gj5F<OvqGT/x<<nyz!0i(00xdSsO2InR
}>kdqQ?ZMz=?X}&r[.2rcHd&4UhkuyBwEC=V{$JaWa>M-fSHlfliGBuweJ[trfsi!ZbLh].
Kh@hc77XVWHvax<3>V=a!}&^fxKsegwbDH+Xml[g:lze?jDL<ZN+DPk0eRka.m=t/5)2[4-
bdXscb8sIJ9/)cw5NI&BjGRqr@KT+U3DO1#K=C#/tP7<neZ)r=UzXV@Mw-A-%6mJ$Q2R)mg
7.35H>h>>&LFbykFXJc%y(+5-@]:y+6Htc>T02)oy^pF)V&RA1=EWRXBv-eQF-rh)68A1fs
<Bu^bsPONZlpsp4i5SSLg^KbUk@Hy%0@@r308!.5v/MGe1Ev=lh#&{U
1j-}eBc7.!-B{7%2E<jV8]me1R=A)%E*<A8H*Qbqa%i2InPXn<7fm@^FT&}@4g)AWW$O$O>
4kNwnRosYGf:r/v}/uKOROHY&elN9jI+.GcW<FLwWeDsQ?=5si770*ne@h@H.wYcFO^4O26
01$:tISi+G+v$+}zM^4R-E#t%baPJK%k(?CucUlG<g27)*VLqS[Q@Q}48$Ibb$AkOAgr!zE
8ekb5zJS1tFI1Gl1GHn6gEx#Tjwnv5(8@QA$#Q>2m(phVP#E04#Sxrhrbt!6F@cCNp.oGY.
7]cf{>bclF.g><x#-.Hi5ShiWU)LF{mk@pRR?>i=X8Ah&$g6H(O1dkN[GnOIYH)h^5y!@lb
xCtFZPGSKsnAtyFqqBsTr/UE-ye+GgMDXq>VC63ao(=%BvqGT/x<<nyz!0i(0e&g28u0@tJ
fs2QN]rhB%b^@&UQh0!X6QO#AGP)sBpkf^p4kG#neN$(oB9>VJ)W1*}v9oc&mf2HN++3.wU
Z$.?f+O(WLGGusCX&PG>[rsKPN5&s=Awd:dsWX=DxCkcu?IeDj:5%BZ/j+fvAaCTTvJ1>l{
dAjEsJ$[aj:Ot3Q?>-pgNxsmT7t)6r<-rpXf7vinEyO>QUXBeuwEwjzL&}yOrOw6Q>ezh?$
VF&-]npg6giDMi/x}!uXsbctS&VaO]98RT+%Vn38q)mwOxClAjSeu@++t[1s9e7lTbQ{l(F
P{N#?i6+XygES#Ki5i&XgbQ:NlnZU30@@r308!.(}V3P@1JR#>Y8R*h
------ END PCP PUBLICKEY ------

View File

@@ -1,24 +1,24 @@
----- BEGIN PCP SECRET KEY -----
Generated by: Pretty Curved Privacy Version 0.1.5
Cipher: CURVE25519-ED25519-SALSA20-POLY1305
Key-ID: 0x7BDF786564A94A60
Creation Time: 2013-11-19T09:54:59
Serial Number: 0x96DA9F38
Key-ID: 0x23E0082C8250DB56
Creation Time: 2013-11-19T14:56:11
Serial Number: 0xC82855BB
Key Version: 0x00000004
1d10ok&9wTrr(Qb7}b$E3%Xzt0oCfQ)6Q$byko!{iSN>e40u+@Y+LkP!yO?I([uuJveWh-y
sA![o?0&+I]<ywJJ=bY7!p$vpJ7^aTd7dB1GOYNR/on#Dp{<f<nZlXR2&^]o/7:)qJ4*p+)
/vhs0<UAOB#Gno<FX3q[8Wg^9rqmi9KO1^Le)eA61m9-{*J$m!gaZ<)5yVAXFhQ*Qu(%Bj=
TtLeCMoysWe%++*8[&=mf<Wd:o2+qOC3P]O19HQ{#Vlt}Vw8FIbNI%UAz!71RZgv$vzfg#n
d{^zY5]ehhK><<ydC%DTW-Jr+NV&+J/ey?}BrdJ]Yzc}<:dNv(+v}/uK<=5U$!eSzE&iK*g
iK5rJy.&Eamow4qLRfRZ>rWjZZ>Fz*LLy$R.ooV5/L9*Z=0i!C0S2[qh.mR^mgmQ&)![&<+
&%vyM^J<fDcxKX!BwD5xRO2OX12jOsS[YuH:NP@K1C$8Fs0]o*/A!fZE$R-}x/u3*Ze&@F{
!!B&C]AKGsN+ZeHGc%GJ)5r4v:u*Bxpe7m5X2xq:e5^F#b{c&nC-j[x0eZoX+-2eir6.ARx
h!4a}IoULk(lr2{y]!o}JDT-SVG78A%R5uCeBP.r^Ay[+K4p*uHTs*rG%PBJS7o:yTChC>I
{sd^{Gj5F<OvqGT/x<<nyz!0i(00xdSsO2InR}>kdqQ?ZMz=?X}&r[.2rcHd&4UhkuyBwEC
=V{$JaWa>M-fSHlfliGBuweJ[trfsi!ZbLh].Kh@hc77XVWHvax<3>V=a!}&^fxKsegwbDH
+Xml[g:lze?jDL<ZN+DPk0eRka.m=t/5)2[4-bdXscb8sIJ9/)cw5NI&BjGRqr@KT+U3DO1
#K=C#/tP7<neZ)r=UzXV@Mw-A-%6mJ$Q2R)mg7.35H>h>>&LFbykFXJc%y(+5-@]:y+6Htc
>T02)oy^pF)V&RA1=EWRXBv-eQF-rh)68A1fs<Bu^bsPONZlpsp4i5SSLg^KbUk@Hy%0rr9
108!.5v/MGe1Ev=lh#&{U
1j-}eBc7.!-B{7%2E<jV8]me1R=A)%E*<A8H*Qbqa])FA/eI>rvJhcifZHSec%lWfh#MRFH
zliU2nzAK^JsWOnPXn<7fm@^FT&}@4g)AWW$O$O>4kNwnRosYG8/:Nn.^v}oixcz?Ff*t{R
Ff}J]4J)]a{l^ok)SLd0WSQS=T<I-B}v4Cg-m*9Q]UkuIN#kcp6TsodS>iBsSJQ3O{-fVlp
<w(0%DDpmjQ72)L+wk9lY1/olL%zoV2}gy[ElD]f%tR>rs{mfZIC>/3^l+T}))0mG(ui>0y
bJXO?#7CN@H1G7giGKS5T69Qq!4M[p>xn4@u/q*3N>Ml8[CTldWv}/uKOROHY&elN9jI+.G
cW<FLwWeDsQ?=5si770*ne@h@H.wYcFO^4O2601$:tISi+G+v$+}zM^4R-E#t%baPJK%k(?
CucUlG<g27)*VLqS[Q@Q}48$Ibb$AkOAgr!zE8ekb5zJS1tFI1Gl1GHn6gEx#Tjwnv5(8@Q
A$#Q>2m(phVP#E04#Sxrhrbt!6F@cCNp.oGY.7]cf{>bclF.g><x#-.Hi5ShiWU)LF{mk@p
RR?>i=X8Ah&$g6H(O1dkN[GnOIYH)h^5y!@lbxCtFZPGSKsnAtyFqqBsTr/UE-ye+GgMDXq
>VC63ao(=%BvqGT/x<<nyz!0i(0e&g28u0@tJfs2QN]rhB%b^@&UQh0!X6QO#AGP)sBpkf^
p4kG#neN$(oB9>VJ)W1*}v9oc&mf2HN++3.wUZ$.?f+O(WLGGusCX&PG>[rsKPN5&s=Awd:
dsWX=DxCkcu?IeDj:5%BZ/j+fvAaCTTvJ1>l{dAjEsJ$[aj:Ot3Q?>-pgNxsmT7t)6r<-rp
Xf7vinEyO>QUXBeuwEwjzL&}yOrOw6Q>ezh?$VF&-]npg6giDMi/x}!uXsbctS&VaO]98RT
+%Vn38q)mwOxClAjSeu@++t[1s9e7lTbQ{l(FP{N#?i6+XygES#Ki5i&XgbQ:NlnZU30rr9
108!.(}V3P@1JR#>Y8R*h
------ END PCP SECRET KEY ------

View File

@@ -3,33 +3,33 @@
Cipher: CURVE25519-ED25519-SALSA20-POLY1305
Owner: Bobby
Mail: bobby@local
Key-ID: 0xFEC0AFC9E0E38457
Public-Key: 0#1e35=WR)p92aZYm/h$byX2/UCCE[rqXzSe/:L.a]?Py
Creation Time: 2013-11-19T09:54:59
Checksum: 1E:3F:73:81:BD:5A:E3:2C:68:2A:7D:FC:47:06:BE:B4
52:EC:A8:F3:07:9D:52:4D:0A:4F:CE:18:5A:AA:68:61
Serial Number: 0xF32F4352
Key-ID: 0x1749A29D12CA3FC5
Public-Key: 1lmvl2*#Rtt@yvCP&qw$TgU0A083o(!w=8s0]Akff8$$L
Creation Time: 2013-11-19T14:56:11
Checksum: 29:26:30:F0:37:EF:EC:8D:4C:8E:0A:0D:CD:0D:A1:21
51:89:EA:56:F9:54:19:D0:EB:69:F4:7F:8F:2D:E7:E0
Serial Number: 0x73C06B1E
Key Version: 0x00000004
Random Art ID: +----------------+
| o.o |
| * |
| . + |
| . o . |
| o o + |
| o = |
| . . |
| . . |
| * . |
| = + |
| o . . o |
| . = o |
| o o |
| . |
| |
+----------------+
0#1e35=WR)p92aZYm/h$byX2/UCCE[rqXzSe/:L.bej(AY9}pIWv4<!2V=KlP9C1r{jJcJg
&8-IGMQG}4NL8yvTd%87&wSL:C=w[JA0u{U5rBeScCR1n61U%?Q9&gxmkeH-{ag]=IR<3AR
Qg-&*aqFb4mMOiXGoB<oOg{mU=*:N>P#w/%ei]HbEQ$HCyIcqF&bN*x7<)>ND0FsZUUj^LH
sum?.7wI)=R>}I1IB)G]1j-S(/Ds$4lYo8%*N8JvmTM@Z]HZh<I/.%=N8fTwo%P!8MwLnkY
a6xsZ-dM6W5r=Z@0*C)xMY)2ytaTraU20(?iE13Ro0dlsyuj6CzLyZ1TP<qyn@lV4<S}.<C
JUY78^^hv4A[uD84$ByiJyC}GK)pR>?QPULNUoa[k}O8fvSbZ+C%Dg:v{%fN{]pZsiv-g@:
.j4zL99S&M}l2jb/]Yk8xk/5X7y@Hj{BjPUq15l[t[B&sh){^4d+^c8XalUGG-SKASh1lm5
<JH8nyUoGGia7N>H}ziJXTF:-SH[ih.TiqHCj62N&JD5kfgLe8rFsjNFu<Q-3)WYKG*x]hT
L+7TLS5iwZ}VTRG}QU@sqPz$7Vijo1Kx]yfOl07EYT.L0RZ.ymt#M760v2*$HDa])8El!-l
?Zb^Y&IE0I<8SJ*[>EKyQhfLDn<RW/Iu7}I>6pVS34SooYD#1xFRX{HwWYF*@ElqhnZ>BzO
U!#K:((j!Jmme:{mNGg8fHW=Sg=mh(0@@r308!.5v/MGe1OjolqucW%
1lmvl2*#Rtt@yvCP&qw$TgU0A083o(!w=8s0]Akffmc5iOurCi1Ip/71wZ^})-qyTe}4KGy
@QWuan[+6[<mn7vTd@2vNG=oSC<E$^=Rr*w-v4$aA}A$6[A*QJ}]rnly*m92jKZqZWm2DLD
=A{WWaR[+D=>qhs{@*4)9kryQwSUVp:95@hDe#84PLpx8[fUde?qqAvuXJm:nGTbv?r.7K5
s{V=V&zf/G+6!$r6*]04NGll57E}UjBY}vd+R6{D(llxpmjV5)qAg2reBR$=4ZX)c2q3bG6
PvKoilCEXzM&vx90sM!k{Smq2dsOiC%7+2.P0JX5c*w0GW<Ku6RJzOz675YVS}88+<yl2k@
5!YGJwYW+y:xff[Qf7PXiD6uo-mMHAjCaM8Fh*3Cncjh+vSbZ+C%Dg:v{%fN>n1CDR%aF@&
[>]aU-<cu-O}4WetV4SWc:6#+wlSzV=RWwpI$2p*a^<.VV%PQFrf7Lq%W?5z-mkizt.guKw
$/Vl-(ilZNvW@y+L?*94bI5lzeqPBvcg@td]f*tt]E}eBXf%Ufi1rO^Q=a(Tjp}epZa+4gk
Kf*zqRkFCr2qCK]h0<V1f6bdv%aZ^j:$/}NGrWL?fET)$OhvbB)L:/5x({NM>+Qbax29{}H
th(:gtcA7dRNYZv6ukJzX654kwI{jM4EWg0fcgQw}a?NqwU7NwP/RujCSvP&L5Im#=)nF5!
8.ZCoaNYZ[h-9JXgc4-Sgdat-mNG3k0@@r308!.(}V3P@1ARv]9SMfu
------ END PCP PUBLICKEY ------

View File

@@ -1,24 +1,24 @@
----- BEGIN PCP SECRET KEY -----
Generated by: Pretty Curved Privacy Version 0.1.5
Cipher: CURVE25519-ED25519-SALSA20-POLY1305
Key-ID: 0xFEC0AFC9E0E38457
Creation Time: 2013-11-19T09:54:59
Serial Number: 0xF32F4352
Key-ID: 0x1749A29D12CA3FC5
Creation Time: 2013-11-19T14:56:11
Serial Number: 0x73C06B1E
Key Version: 0x00000004
0#1e35=WR)p92aZYm/h$byX2/UCCE[rqXzSe/:L.a])M(*Z#nGM3zR%pjJX:[=CXgt[h]{B
!jK4C+9/ct!.39Y9}pIWv4<!2V=KlP9C1r{jJcJg&8-IGMQG}4GHiVOa:b@ZZO$s:YPjPe5
DjRa9K9B[(s]!Bk:n95/aO(Ilow{cLZ%.D&fTqwon#NM&y[&M/v0nWE=*dgaK7Va7lHn][u
g<Ysqw5sg!>]8t-l/O%m(nF#wtlMbGbP!j/?cqDzz3/$HIL5b[KKBKe4lyPH5jyy3a2hnSt
CP2:BHc[j>T}$h3KRXkK#M/+v>qAEN0}N7t%1eM4cgp64j[J}e6vTd%87&wSL:C=w[JA0u{
U5rBeScCR1n61U%?Q9&gxmkeH-{ag]=IR<3ARQg-&*aqFb4mMOiXGoB<oOg{mU=*:N>P#w/
%ei]HbEQ$HCyIcqF&bN*x7<)>ND0FsZUUj^LHsum?.7wI)=R>}I1IB)G]1j-S(/Ds$4lYo8
%*N8JvmTM@Z]HZh<I/.%=N8fTwo%P!8MwLnkYa6xsZ-dM6W5r=Z@0*C)xMY)2ytaTraU20(
?iE13Ro0dlsyuj6CzLyZ1TP<qyn@lV4<S}.<CJUY78^^hv4A[uD84$ByiJyC}GK)pR>?QPU
LNUoa[k}O8fvSbZ+C%Dg:v{%fN{]pZsiv-g@:.j4zL99S&M}l2jb/]Yk8xk/5X7y@Hj{BjP
Uq15l[t[B&sh){^4d+^c8XalUGG-SKASh1lm5<JH8nyUoGGia7N>H}ziJXTF:-SH[ih.Tiq
HCj62N&JD5kfgLe8rFsjNFu<Q-3)WYKG*x]hTL+7TLS5iwZ}VTRG}QU@sqPz$7Vijo1Kx]y
fOl07EYT.L0RZ.ymt#M760v2*$HDa])8El!-l?Zb^Y&IE0I<8SJ*[>EKyQhfLDn<RW/Iu7}
I>6pVS34SooYD#1xFRX{HwWYF*@ElqhnZ>BzOU!#K:((j!Jmme:{mNGg8fHW=Sg=mh(0SSi
208!.5v/MGe1OjolqucW%
1lmvl2*#Rtt@yvCP&qw$TgU0A083o(!w=8s0]Akff94vs*^&{c!M<:ygH9Oj@o+CQ-5YL44
@(Ewr>Ch*8gaZ@OurCi1Ip/71wZ^})-qyTe}4KGy@QWuan[+6[=k:}K^kAe?9Gz:]b.9[G5
50*1D/jm227vzE57QPjI<9!W=Y5aKW}-TBpPl3Vtuh:2-$Cm]<J!9}#riZ9c&V-Cf?&BY7.
9gOA2gWfLpN!G{YQ2}vJ8=R]23skUlu@(#Ha-@vUc)f-x](o)0{yC76DOsH9=Sywouk.Cy#
e.8Jvu8^*b30XR@fPON45A8Vnf8e<jXE*6hIY:NwWWD)T<LTop$vTd@2vNG=oSC<E$^=Rr*
w-v4$aA}A$6[A*QJ}]rnly*m92jKZqZWm2DLD=A{WWaR[+D=>qhs{@*4)9kryQwSUVp:95@
hDe#84PLpx8[fUde?qqAvuXJm:nGTbv?r.7K5s{V=V&zf/G+6!$r6*]04NGll57E}UjBY}v
d+R6{D(llxpmjV5)qAg2reBR$=4ZX)c2q3bG6PvKoilCEXzM&vx90sM!k{Smq2dsOiC%7+2
.P0JX5c*w0GW<Ku6RJzOz675YVS}88+<yl2k@5!YGJwYW+y:xff[Qf7PXiD6uo-mMHAjCaM
8Fh*3Cncjh+vSbZ+C%Dg:v{%fN>n1CDR%aF@&[>]aU-<cu-O}4WetV4SWc:6#+wlSzV=RWw
pI$2p*a^<.VV%PQFrf7Lq%W?5z-mkizt.guKw$/Vl-(ilZNvW@y+L?*94bI5lzeqPBvcg@t
d]f*tt]E}eBXf%Ufi1rO^Q=a(Tjp}epZa+4gkKf*zqRkFCr2qCK]h0<V1f6bdv%aZ^j:$/}
NGrWL?fET)$OhvbB)L:/5x({NM>+Qbax29{}Hth(:gtcA7dRNYZv6ukJzX654kwI{jM4EWg
0fcgQw}a?NqwU7NwP/RujCSvP&L5Im#=)nF5!8.ZCoaNYZ[h-9JXgc4-Sgdat-mNG3k0SSi
208!.(}V3P@1ARv]9SMfu
------ END PCP SECRET KEY ------

View File

@@ -1,6 +1,6 @@
bartid = 0x7AEFC16D88E43C2B
bartserial = 0x91FEE742
idbobby = 0xFEC0AFC9E0E38457
idalicia = 0x7BDF786564A94A60
bartid = 0x9AD180B48F2746E7
bartserial = 0xEBBF8898
idbobby = 0x1749A29D12CA3FC5
idalicia = 0x23E0082C8250DB56
mailbobby = bobby@local
mailalicia = alicia@local

View File

@@ -1,11 +1,11 @@
117IsVZ{M<S&Z?0mhIOEbgqco>Qeqspa72t2[5<yzy<%XA&m<+e)nUjO*]&*K*c)pffj2=%
7MN(EWGTCGIDk)zddr)0jIh^EACdxEJQma{[<Gf}7*=X[Krixt-FCg{x&O&56{+!eRcw0?#
AdpYnz#nBupZH0Q/<xx.QO-^?NBE1uw?L^pCFlVb{%6FDsNN80L/z6kX.A3jWVIsDBC*M[c
.)uxMiW]%P!&lg[O:Dg6%cz8SDMijDFRXAS:++>Jx<dDZ[#Oh!l0O#ip[01S^Zm&GgcIKcp
Jk{3Ic3ax2>Xj-}W!lJ*v.89pLi*Ncm!mE<NdnQjO8Ee-V:usGF6NAyHmZC$$qToaZykHww
f{Xsq^(m:KXo<SRjr4k>JDU@ABW]MdqUH#x5<k6RAFmPozFrW0vqYQvy&r/(yYDpRkp3Q5Q
9M&Qb^&8>QT6%&-xJ^K9%Fh.FQjWPBFYS(DJJLLnNVYJ?/&&#IitIYm>L^U[PQoWmcVqk6p
tIf-F:1SJX{%fp}1AG!rp.}YO2WxCg5$ogL-d:Ft.a[030WFR/?.10JpCDEGO.{C*QOC?Sl
^)KkvlGN6sj>]tUcY?T=oJmd>>ZQ(lladd=t1h6GW1(q?]qmr<vE=RSRO^/j4-a1P=y/.yW
*2PX<-b}c3lCCsTv/}fUj32k6Lf)Gish5YM8poO:bF$}Il?2+q*rZ^{VM4Zh<n52u}{+]-G
EErFwp&/@5mmo6[i5-VFmk=}*fF#r10@@r308!.5wb(Pf1Gnzdv/MGe
11FKR@@sm5ulAVpg?d#VWZ/C<w*)&r*=p2-.hdv/i(Jn}OF/PM&p-*+-slMVEB%#ic<<N6l
J6vq]]*=Rr8ddszddr)0phoo9Dm]1NA2c?r!3+KqZ<:#q$WWJd8QiQhXKQhR8aBmR{#@cGE
lmKZ.VYXUYmA<i@7$)41/h1q!Jp-x?N0N-l0%x1s!}OEW[6kuViu=mBKR0c^QZqh0N^9Q&e
f^]^/3%feM)=J9tSQYS}E7)^]M#y7e2Q)VRaz-EC8]k5VgMZ.fA8-C50+V*.7*B$mOF)nXz
yR}!8MO}+X0.krUZZ3HBI}jfB/^/bx%Ar4(j9a0@Eatg9<E5D8-@Ac/u]2}IXEK>.1?-aFf
iN-ind-7XB/(-^m8faYlpRo^FO-}R-92:Sa->d[?O(ahZzFrW0vqYQvy&r/(yYExHYc4%ka
s5B4aN$G/i@$+9D]Mny)*RC>rxu-3/WHdzM/-aB/W/U@-4Xz=7NjO)]^GX)a!W7z4{lNp[i
9+Jx/yGLU$Zl64y[o(L-TjS4qM-[13*<@ykU[<R)p=IJG:wqSU1hxlribZWP*9*)(?2@QPo
#PRsJ.fkjS}Pgg/gLvz9e^vWw@$oeX]TIk!1162Rn.)FUO5%4EF#M(YYoe+qDM:cN4}Yg1N
Hn/SjH8utta@WIHY1Nsa^e%9a++:zZUEXLuCMN$dAMRaEa5d:d0w7{8qzBX31Ym}a.[:*)o
+r.n>Ad8QZgC}SZmk=}Qg^TL*f!$D-0@@r308!.(}#uY%1HVsi9rl6t

View File

@@ -1,15 +1,15 @@
117IsVZ{M<S&Z?0mhIOEbgqco>Qeqspa72t2[5<yzu86SbJeYg=?0X7HYq1UY>E<T.5}8K0
ldO8f*T4?bRna*A&m<+e)nUjO*]&*K*c)pffj2=%7MN(EWGTCGA9Z/m7:@FxVrz<nVw4yZW
pF>iLe3XC2+ZEXP$^.LcU[T6m5J1<pAw.0KC=.dMJckEGVKGfP49[<RGI$YV2HP*>&Xn.Lq
kCg%Rf7uQj}37$dDZ{Hdt!rYCIKU2PiLopVHGX-jEYVwKWf/Eaz!^^L<om^eX+VzuVfKBZI
bQ9E)VpYi4JR=%)Z3H=:?^Znf(ajIot1RVK!ahk%lAvd0F)OmFczddr)0jIh^EACdxEJQma
{[<Gf}7*=X[Krixt-FCg{x&O&56{+!eRcw0?#AdpYnz#nBupZH0Q/<xx.QO-^?NBE1uw?L^
pCFlVb{%6FDsNN80L/z6kX.A3jWVIsDBC*M[c.)uxMiW]%P!&lg[O:Dg6%cz8SDMijDFRXA
S:++>Jx<dDZ[#Oh!l0O#ip[01S^Zm&GgcIKcpJk{3Ic3ax2>Xj-}W!lJ*v.89pLi*Ncm!mE
<NdnQjO8Ee-V:usGF6NAyHmZC$$qToaZykHwwf{Xsq^(m:KXo<SRjr4k>JDU@ABW]MdqUH#
x5<k6RAFmPozFrW0vqYQvy&r/(yYDpRkp3Q5Q9M&Qb^&8>QT6%&-xJ^K9%Fh.FQjWPBFYS(
DJJLLnNVYJ?/&&#IitIYm>L^U[PQoWmcVqk6ptIf-F:1SJX{%fp}1AG!rp.}YO2WxCg5$og
L-d:Ft.a[030WFR/?.10JpCDEGO.{C*QOC?Sl^)KkvlGN6sj>]tUcY?T=oJmd>>ZQ(lladd
=t1h6GW1(q?]qmr<vE=RSRO^/j4-a1P=y/.yW*2PX<-b}c3lCCsTv/}fUj32k6Lf)Gish5Y
M8poO:bF$}Il?2+q*rZ^{VM4Zh<n52u}{+]-GEErFwp&/@5mmo6[i5-VFmk=}*fF#r10SSi
208!.5wb(Pf1Gnzdv/MGe
11FKR@@sm5ulAVpg?d#VWZ/C<w*)&r*=p2-.hdv/iSOLh}x@.cKb(1rNTN<rzr6bg6hcyn?
L]F^}/Cg/4-GQAOF/PM&p-*+-slMVEB%#ic<<N6lJ6vq]]*=Rq#^GY)Oql&.dc.OukuZhtA
>@8@wBa3x=@:bJ{hS1j]S:tr!/@6GjHTi88@^VJd5rXc*KVxJVG(@7&[YSa%nqnZ*T1Szd&
/bP-hA1&-J9WlZHv5UqyJNkzKin{(Q@[eB?Nupc1xP5:kfWJC+=LypT2.[Jz#3aaUm)j&-r
z!7YPT*di]YBo}>&tJ8RDB7tF6NxSVcqL0R(Uf7enM}x:9]Ifaizddr)0phoo9Dm]1NA2c?
r!3+KqZ<:#q$WWJd8QiQhXKQhR8aBmR{#@cGElmKZ.VYXUYmA<i@7$)41/h1q!Jp-x?N0N-
l0%x1s!}OEW[6kuViu=mBKR0c^QZqh0N^9Q&ef^]^/3%feM)=J9tSQYS}E7)^]M#y7e2Q)V
Raz-EC8]k5VgMZ.fA8-C50+V*.7*B$mOF)nXzyR}!8MO}+X0.krUZZ3HBI}jfB/^/bx%Ar4
(j9a0@Eatg9<E5D8-@Ac/u]2}IXEK>.1?-aFfiN-ind-7XB/(-^m8faYlpRo^FO-}R-92:S
a->d[?O(ahZzFrW0vqYQvy&r/(yYExHYc4%kas5B4aN$G/i@$+9D]Mny)*RC>rxu-3/WHdz
M/-aB/W/U@-4Xz=7NjO)]^GX)a!W7z4{lNp[i9+Jx/yGLU$Zl64y[o(L-TjS4qM-[13*<@y
kU[<R)p=IJG:wqSU1hxlribZWP*9*)(?2@QPo#PRsJ.fkjS}Pgg/gLvz9e^vWw@$oeX]TIk
!1162Rn.)FUO5%4EF#M(YYoe+qDM:cN4}Yg1NHn/SjH8utta@WIHY1Nsa^e%9a++:zZUEXL
uCMN$dAMRaEa5d:d0w7{8qzBX31Ym}a.[:*)o+r.n>Ad8QZgC}SZmk=}Qg^TL*f!$D-0SSi
208!.(}#uY%1HVsi9rl6t

View File

@@ -1,2 +1,2 @@
0yzGIvaO]*=f%2j{IN3RyjMVfDkqOCCWa%iGKjQA4sv<gU%}2pVH4?=opi#NgNZTplE8-/L
TacAn-Z^)aMhF6VTn?YTZl2=3#qorAT*[gk4vkK+U<FB:6z+([3xE}0#XsX8<X(?RB#)G
0NJpVRBx#s8XBhtH3[&hnAHi{@a#izw2QKZs>(!qEVm6!Ek-M>gFR&C13T-*gZ+fyQ@!9I*
hRt+6n.(bqn5B4myD2$*etzI5-QwmkMKXNbeq4C8Dk)q7B4=)EeWyhtM>IV1pZ7:vF&!0

View File

@@ -1,3 +1,2 @@
12&LmmMip+h8WoSiw:2WfAq7M000000000008!.5wb(Pf0yj1r?y^{}ZAt{nLMo443Ht[22
+B]Zw9l8C8u&*uVXnJ>]pFu>N95pAc<).Ll5X12&Gj%0UH3rJE]GES2lj-7000000000000
000000000000000000000000000000000
16LDgD]-t>Q1x*FrY.@b*&DTJ6N<9wQMrWGh5/.A<O<rx&M^(K5x@cx@9To3s&(WOwxz]->
AxT^(g2ne2@jq9fFCEwlPu?UfHOk+huiZS000000000008!.(}#uY%0SSi200000