Received: from sog-mx-1.v43.ch3.sourceforge.com ([172.29.43.191] helo=mx.sourceforge.net) by sfs-ml-4.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1V7lSJ-0000Zj-Di for bitcoin-development@lists.sourceforge.net; Fri, 09 Aug 2013 12:06:07 +0000 X-ACL-Warn: Received: from mail-ee0-f45.google.com ([74.125.83.45]) by sog-mx-1.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128) (Exim 4.76) id 1V7lSI-0000oG-2m for bitcoin-development@lists.sourceforge.net; Fri, 09 Aug 2013 12:06:07 +0000 Received: by mail-ee0-f45.google.com with SMTP id c50so2081368eek.32 for ; Fri, 09 Aug 2013 05:05:59 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-gm-message-state:sender:subject:mime-version:content-type:from :in-reply-to:date:cc:content-transfer-encoding:message-id:references :to; bh=GZ9O52M8m3067w5ys2DHwKrdF3s49yDt64NnHXdQ064=; b=jgPkH0R3YPv/G4dC7o6hWbmjajfJ/jvHxYD/YVHdFYdCWCqebCAVMz/IolrraQl7UA ncQEHr0sTJYCQEeDlm0TiIeGXGhO1kySrUlElJdCgsKPJ8WbRtkZgSUZVlabAns5v2yj +esg5q+l+rgknYb8XHyWofNacQwfWfRiO1naB+5znTMU+KESrpQfb/QztqD8wJ7cOf18 8ZyDplBUPCjDJXYnXQy72z1M6zGNMDyRtO6EzkhV0U+svRJZONzJHQDFE+wxJYt60LH2 Rta0OXo70QkZNHCspm/2sB+IrbdWFOteG60Wj32NtolAyhjwm1L7F24tnWkytd084Jbb UkUg== X-Gm-Message-State: ALoCoQkLCzuLzDjXD0w7SMdPe68DI0uHBuIx0D7WEH+8kwX6KV985TSqe6apxwjl7uW+ZaznUHXn X-Received: by 10.15.31.200 with SMTP id y48mr12588907eeu.153.1376049958831; Fri, 09 Aug 2013 05:05:58 -0700 (PDT) Received: from [127.0.0.1] ([82.221.102.245]) by mx.google.com with ESMTPSA id k7sm28118447eeg.13.2013.08.09.05.05.54 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 09 Aug 2013 05:05:58 -0700 (PDT) Sender: w grabhive Mime-Version: 1.0 (Apple Message framework v1283) Content-Type: text/plain; charset=us-ascii From: Wendell In-Reply-To: Date: Fri, 9 Aug 2013 14:05:46 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: <54F09675-D6A7-4415-82F1-920248E8188D@grabhive.com> References: To: Mike Hearn X-Mailer: Apple Mail (2.1283) X-Spam-Score: 3.4 (+++) X-Spam-Report: Spam Filtering performed by mx.sourceforge.net. See http://spamassassin.org/tag/ for more details. 1.5 RCVD_IN_PSBL RBL: Received via a relay in PSBL [82.221.102.245 listed in psbl.surriel.com] 0.6 RCVD_IN_SORBS_WEB RBL: SORBS: sender is an abusable web server [82.221.102.245 listed in dnsbl.sorbs.net] 1.2 RCVD_IN_BL_SPAMCOP_NET RBL: Received via a relay in bl.spamcop.net [Blocked - see ] X-Headers-End: 1V7lSI-0000oG-2m Cc: Bitcoin Dev Subject: Re: [Bitcoin-development] SPV client in pure JavaScript? X-BeenThere: bitcoin-development@lists.sourceforge.net X-Mailman-Version: 2.1.9 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Aug 2013 12:06:07 -0000 Right, I'm not suggesting that we have this wallet in a web app, but = rather precisely what you are talking about: using special browser = features, and bundling it. I am fundamentally monoculture-opposed, but = given Chrome's present installed base, that initial target makes sense = to me, provided that we could have a one-click installation (as per = normal, via the Chrome Store). Chrome also has this "Native Client" plug-in: I know next to nothing = about it, and this goes off the rails of the Subject, but perhaps an SPV = implementation there could be a solution to the concerns you expressed? -wendell grabhive.com | twitter.com/grabhive | gpg: 6C0C9411 On Aug 9, 2013, at 1:48 PM, Mike Hearn wrote: > JavaScript is turing complete so of course it can be done. The real = question you're asking is, can it be done in a web app? I think the = answer is I think "no" because web apps aren't allowed to make raw TCP = socket connections. >=20 > Now there may be a way around that by using browser-specific things = like extensions or "installable apps" which give your code greater = access permissions. This approach means you essentially use Chrome as = your app platform instead of a JVM, the assumption presumably being that = more users have Chrome than a JVM. The flip side is that users who don't = would probably balk at the idea of installing an entire browser in order = to run a wallet app, whereas a JVM can be bundled and the resulting app = acts like any other. I don't know of a convenient way to "statically = link" Chrome into a regular-looking application. >=20 > I personally wouldn't find such a design compelling. Whilst Java isn't = exactly a great language, JavaScript is significantly worse in virtually = all aspects. I don't understand why anyone would want to use JavaScript = outside the browser - you get less safety, less performance, fewer = features, less mature tools and so on. If the end result is an = installable app like any other, all you did is cripple yourself vs the = competition that's using languages/platforms designed for it.