Why is this on this website? At some time back in 2002 I must have found it of passing interest and copied it, so to prevent URL entropy I’ll keep a copy here for posterity — ajft.
11 February 2002
Authors (alphabetically):
Sister Tornado
Copyright © 2002 Sister Tornado. Reproduce with credit at will.
Abstract
SOAP [1] is a lightweight protocol for exchange of information in a decentralized, distributed environment, using XML. This document details transporting SOAP messages over the USENET [2], as modified by the ideas and techniques of BlackNet [3].
Status
This is a draft.
Table of Contents
1. Introduction
1.1 Notational Conventions
2. Use Of USENET Message body
2.1 Encoding
3. Identifying USENET transports in WSDL
4. Request / Response semantics
5. Examples
6. Security Considerations
7. References
1. Introduction
BlackNet provides a model for two-way anonymous communication over USENET. This document describes an adaptation of the technique for computer-to-computer communication. It is hoped that this technique will allow very high risk Web Services to operate with a reduced risk of exposure to coercive forces.
Like the BlackNet model, this SOAP transport hides the identities of both client and server from each other, at the expense of latency. Clients and servers post anonymously to USENET through a chain of anonymous remailers.
1.1 Notational Conventions
The keywords “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in RFC-2119 [4].
2. Use of USENET Standard
2.1 Use of USENET Message Headers
As USENET SOAP, except servers MAY decrypt every message in the newsgroups it monitors, ignoring Subject headers and Message-IDs.
2.2
Messages should always be ENCRYPTED to the recipient’s public key. The server’s key is published in WSDL, publicly or by arrangement. The client’s key is published publicly or via API call.
Encrypted messages should be ARMORED.
3. Identifying BLACK USENET transports in WSDL
The URI http://schemas.xmlsoap.com/soap/usenet/black/ SHOULD be used to identify USENET transports compliant with this specification in the transport attribute of the soap:binding element of a WSDL [5] document (see section 3.3 of the WSDL spec.)
The address of the SOAP service in the soap:address element of a WSDL document SHOULD be the name or handle of the intended recipient and a comma-delimitedlist of newsgroups where a request may be posted. For example:
<soap:address
location="DarkNet@example.alt.soap.messages.trendy,example.alt.soap.messages.fake">
4. Request / Response semantics
As in USENET SOAP, but Message-Id header and Subject correlations are not required.
5. Example.
As in USENET SOAP transport.
6. Security Considerations
It’s not clear whether an automated service can reliably choose anonymous remailers in an intelligent and anonymous manner. Can an automated service survive an extended period of message passing in this manner and remain anonymous? How does this affect Traffic Analysis?
7. References
Footnotes: [0] Tornado, S. “USENET Transport Binding for SOAP 1.1”, February 2002
[1] Box, D., Ehnebuske, D., Kakivaya, G., Layman, A., Mendelsohn, N., Nielsen, H. F., Thatte, S. and D. Winer, “Simple Object Access Protocol (SOAP) 1.1”, May 2000.
[2] Horton M., Adams R., “Standard for Interchange of USENET Messages” RFC1036, December 1987
[3] May T., “True Nyms and Crypto Anarchy”, 2001
[4] Bradner S., “Key words for use in RFCs to Indicate Requirement Levels”, RFC 2119, Harvard University, March 1997
[5] Christensen E., Curbera F., Meredith G., Weerawarana S. “Web Services Description Language (WSDL) 1.1”, March 2001.