Return-Path: Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: (qmail 11141 invoked from network); 13 Apr 2009 08:58:04 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 13 Apr 2009 08:58:04 -0000 Received: (qmail 78991 invoked by uid 500); 13 Apr 2009 08:58:03 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 78904 invoked by uid 500); 13 Apr 2009 08:58:02 -0000 Mailing-List: contact user-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@couchdb.apache.org Delivered-To: mailing list user@couchdb.apache.org Received: (qmail 78894 invoked by uid 99); 13 Apr 2009 08:58:02 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 13 Apr 2009 08:58:02 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of skippy.hammond@gmail.com designates 209.85.142.187 as permitted sender) Received: from [209.85.142.187] (HELO ti-out-0910.google.com) (209.85.142.187) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 13 Apr 2009 08:57:52 +0000 Received: by ti-out-0910.google.com with SMTP id 28so1679812tif.11 for ; Mon, 13 Apr 2009 01:57:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:reply-to :user-agent:mime-version:to:cc:subject:references:in-reply-to :content-type:content-transfer-encoding; bh=A3tdiWpd2WZK/naizwMw1Yxf0YwUcaJpha5t3FmilFQ=; b=TuAT911GY64D/Z/p7RP6JhmAVYjkR4ZNcidRxQZI7ZXJl7w8NKSvxtpA+RSB+LeAkD Cyv7NtoqTnOxVayAqA+08nCY565qEVRslrmYHCJJvqbu3fCxR57RB4+nNrxiZOhwr0V1 t3ZTqfe3rzQ5vac8nRegq10J0nYX8ROfXpZ04= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:reply-to:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; b=PTvTy/1hIvJCQjX6jXWnQgOVHX4W50uZ+ZckeD/S0oaOY/4ziKLtfHKQgpAXa3rLVZ joBOZ15dwE/UtUA1Me7Dufn4dlYfDnNWOXnzQPzJojUXieMLCv+CIiBjMzxGDZsLsFE8 dj2330fPloSW5ZoWihPt2QWnEYJwoD4UlDdcY= Received: by 10.110.52.5 with SMTP id z5mr1206936tiz.44.1239613050330; Mon, 13 Apr 2009 01:57:30 -0700 (PDT) Received: from ?192.168.0.12? (202.168.100.57.dynamic.rev.eftel.com [202.168.100.57]) by mx.google.com with ESMTPS id y5sm119868tia.37.2009.04.13.01.57.27 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 13 Apr 2009 01:57:29 -0700 (PDT) Message-ID: <49E2FE60.3060304@gmail.com> Date: Mon, 13 Apr 2009 18:57:04 +1000 From: Mark Hammond Reply-To: mhammond@skippinet.com.au User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1b3pre) Gecko/20090223 Thunderbird/3.0b2 MIME-Version: 1.0 To: user@couchdb.apache.org CC: mhammond@skippinet.com.au Subject: Re: Proposal for digital signatures of documents References: <20090310160113.GA20683@uk.tiscali.com> <49E29B01.3040301@gmail.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org As usual, 2 seconds after I hit 'Send' I think of something else to say... On 13/04/2009 5:16 PM, Chris Anderson wrote: > Something like this then? (also a list of signatures, here) > > { > "_id" : "89a7stdg235", > "_rev" : "1-26476513", > "message" : "I said this and I meant it.", > "date" : "2009/04/09 15:54:08", > "author" : { > "name" : "J. Chris Anderson", > "url" : "http://jchrisa.net", > "photo" : "http://jchrisa.net/profile.jpg" > } > "foo" : "not signed but still a normal field", > "signatures" : [{ > "signed-fields: [ "message", "date", "author"], > etc as described... > }] > } I've a slight concern about the name 'signatures' here - its not about 'signatures' per-se, it's more about the assumptions *any* regular word implies about the 'schema' of the database trying to use this facility. In other words, how can we be sure the field 'signatures' doesn't conflict with a field already in the database? I'm not quite up on the full context of this discussion, but I see 2 potential solutions: * Leave it up to the app to dictate the name of the field (ie, 'signatures' is just an example in the above, but the literal field name is up to the app) or * Invent a new naming convention for a category of fields somewhere in between 'reserved' (ie, those with a leading '_') and application-specific ones. IOW, assuming the couch impl will not let us use '_signatures', use something along the lines of '.signatures' - something couch will not reject, but something which apps can easily avoid. A leading '.' does have a certain appeal - its almost a 'hidden' field... Cheers, Mark