Re: [jose] Reducing the size of JWS payloads

"Manger, James H" <James.H.Manger@team.telstra.com> Thu, 20 December 2012 01:03 UTC

Return-Path: <James.H.Manger@team.telstra.com>
X-Original-To: jose@ietfa.amsl.com
Delivered-To: jose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7D12321F85E6 for <jose@ietfa.amsl.com>; Wed, 19 Dec 2012 17:03:03 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.776
X-Spam-Level:
X-Spam-Status: No, score=-0.776 tagged_above=-999 required=5 tests=[AWL=0.124, BAYES_00=-2.599, HELO_EQ_AU=0.377, HOST_EQ_AU=0.327, HTML_MESSAGE=0.001, RELAY_IS_203=0.994]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Tr4gjCj+xNzE for <jose@ietfa.amsl.com>; Wed, 19 Dec 2012 17:03:02 -0800 (PST)
Received: from ipxcno.tcif.telstra.com.au (ipxcno.tcif.telstra.com.au [203.35.82.208]) by ietfa.amsl.com (Postfix) with ESMTP id BC7DE21F8831 for <jose@ietf.org>; Wed, 19 Dec 2012 17:03:01 -0800 (PST)
X-IronPort-AV: E=Sophos; i="4.84,320,1355058000"; d="scan'208,217"; a="107165097"
Received: from unknown (HELO ipcdni.tcif.telstra.com.au) ([10.97.216.212]) by ipocni.tcif.telstra.com.au with ESMTP; 20 Dec 2012 12:02:58 +1100
X-IronPort-AV: E=McAfee;i="5400,1158,6931"; a="96301801"
Received: from wsmsg3756.srv.dir.telstra.com ([172.49.40.84]) by ipcdni.tcif.telstra.com.au with ESMTP; 20 Dec 2012 12:02:58 +1100
Received: from WSMSG3153V.srv.dir.telstra.com ([172.49.40.159]) by wsmsg3756.srv.dir.telstra.com ([172.49.40.84]) with mapi; Thu, 20 Dec 2012 12:02:57 +1100
From: "Manger, James H" <James.H.Manger@team.telstra.com>
To: Mike Jones <Michael.Jones@microsoft.com>, "jose@ietf.org" <jose@ietf.org>
Date: Thu, 20 Dec 2012 12:02:56 +1100
Thread-Topic: Reducing the size of JWS payloads
Thread-Index: Ac3dkDn1ScBaTFOCSwGyAjfBe1wGHgArYb9QAAEkkLAAAb5OYAAApjQQAABZXTA=
Message-ID: <255B9BB34FB7D647A506DC292726F6E115042EDA63@WSMSG3153V.srv.dir.telstra.com>
References: <4E1F6AAD24975D4BA5B16804296739436696B341@TK5EX14MBXC283.redmond.corp.microsoft.com> <255B9BB34FB7D647A506DC292726F6E115041F65F9@WSMSG3153V.srv.dir.telstra.com> <4E1F6AAD24975D4BA5B168042967394366977C74@TK5EX14MBXC283.redmond.corp.microsoft.com> <255B9BB34FB7D647A506DC292726F6E115041F6786@WSMSG3153V.srv.dir.telstra.com> <4E1F6AAD24975D4BA5B16804296739436697A5D4@TK5EX14MBXC283.redmond.corp.microsoft.com>
In-Reply-To: <4E1F6AAD24975D4BA5B16804296739436697A5D4@TK5EX14MBXC283.redmond.corp.microsoft.com>
Accept-Language: en-US, en-AU
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US, en-AU
Content-Type: multipart/alternative; boundary="_000_255B9BB34FB7D647A506DC292726F6E115042EDA63WSMSG3153Vsrv_"
MIME-Version: 1.0
Subject: Re: [jose] Reducing the size of JWS payloads
X-BeenThere: jose@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Javascript Object Signing and Encryption <jose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jose>, <mailto:jose-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/jose>
List-Post: <mailto:jose@ietf.org>
List-Help: <mailto:jose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jose>, <mailto:jose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 20 Dec 2012 01:03:03 -0000

> FYI, I was able to deflate the 427 compressed bytes you sent me privately

Opps, it wasn’t meant to be private; hit the wrong “reply” button I guess. Java’s DEFALTE output is below just for completeness.

--
James Manger

From: Manger, James H
Sent: Thursday, 20 December 2012 11:26 AM
To: 'Mike Jones'
Subject: RE: Reducing the size of JWS payloads

Hi Mike,

Here are the 427 compressed bytes I get (from Java’s java.util.zip.Deflater class, as implemented by Oracle):
21 200 201 178 107 64 0 0 208 47 146 34 166 100 137 110 67 211 210 72 135 216 40 83 12 49 94 17 228 235 95 189 179 60 229 129 234 204 200 155 91 131 2 202 194 61 250 209 198 209 80 151 245 248 255 169 248 110 9 30 139 128 205 214 119 220 210 179 53 176 167 184 31 186 57 172 218 232 152 183 246 79 206 35 243 88 46 186 124 77 7 139 90 18 58 211 176 80 14 223 131 185 161 82 198 38 230 82 18 124 229 216 196 31 239 192 88 57 43 20 88 48 176 197 55 47 30 176 157 80 78 136 107 101 191 48 199 59 104 56 158 131 109 89 49 217 229 209 132 226 51 18 71 191 120 22 141 47 84 56 0 64 229 251 236 109 13 216 165 250 157 33 182 168 173 177 63 152 234 249 143 218 226 171 38 171 46 69 250 236 56 177 102 136 94 242 135 122 9 126 203 157 137 156 220 245 20 228 166 28 35 105 22 229 206 97 203 247 4 238 251 118 253 102 195 226 1 42 171 130 250 234 235 226 104 94 157 163 200 74 41 198 198 248 240 59 94 73 146 195 33 209 238 183 166 94 79 183 18 76 73 90 236 23 247 40 91 93 204 127 215 3 216 212 89 43 119 1 184 232 204 18 121 55 108 60 156 103 26 196 31 222 38 82 26 186 193 172 43 28 49 65 197 112 108 94 174 119 248 153 147 47 129 2 99 124 202 175 224 10 182 0 215 162 107 5 239 164 236 207 11 208 62 32 53 186 37 51 186 54 227 253 49 246 78 254 190 180 149 68 44 184 231 189 17 232 178 51 4 240 13 230 208 178 95 202 198 109 241 239 28 77 105 246 16 201 230 45 99 103 111 48 93 195 103 236 194 171 199 213 49 130 241 233 226 68 51 46 88 228 24 203 142 83 85 92 71 55 197 83 37 175 52 76 38 129 245 187 52 54 181 13 91 199 239 253 15

I can uncompress your 536 bytes to the original 526.


P.S. I personally find it much easier to handle binary data in hex than as decimal integers. Perhaps decimal is used in the JOSE specs so a JSON array of numbers can be used to represent the binary data, though that doesn’t seem particularly useful.

--
James Manger