Re: Bug#860771: ITP: node-diffie-hellman -- pure js diffie-hellman

2017-04-20 Thread Bastien ROUCARIES
On Thu, Apr 20, 2017 at 12:41 AM, Christian Seiler  wrote:
> On 04/19/2017 11:36 PM, Bastien ROUCARIES wrote:
>> Package: wnpp
>> Severity: wishlist
>> Owner: ro...@debian.org
>> X-Debbugs-CC: debian-devel@lists.debian.org
>>
>> * Package name: node-diffie-hellman
>>   Version : 5.0.2
>>   Upstream Author : Calvin Metcalf
>> * URL : https://github.com/crypto-browserify/diffie-hellman
>> * License : Expat
>>   Programming Lang: JavaScript
>>   Description : pure js diffie-hellman key exchange
>>
>>  Diffie–Hellman key exchange (D–H)  is a specific method of securely
>>  exchanging cryptographic keys over a public channel. The
>> Diffie–Hellman key exchange method allows two parties that have no
>> prior knowledge of each other to jointly establish a shared secret key
>> over an insecure channel. This key can then be used to encrypt
>> subsequent communications using a symmetric key cipher.
>>  .
>>  Node.js is an event-based server-side JavaScript engine.
>
> Is this timing safe? From the github page it uses a pure-JS
> BigNum implementation (bn.js) for the complicated stuff, but
> the README of that code doesn't mention timing at all. And
> from perusing the source code of bn.js, it doesn't appear to
> be the case that their implementation of exponentiation in
> a prime field is geared towards constant-time execution (when
> the sizes are the same).
>
> If you look at e.g. OpenSSL's source code (bn_exp.c), there's
> a specific function (bn_mod_exp_mont_consttime) in there that
> takes great care of making sure that the operation runs in
> constant time - down to how the memory layout is organized. I
> wouldn't know how you'd even do that in an interpreted
> language such as JavaScript, but even if that's possible, I'd
> suspect that a lot of brain power would need to go into
> designing that [1], while bn.js's implementation of the
> Red.pow function seems rather straight-forward. (Which is
> fine, bn.js appears to have the goal to be a generic bignum
> library, and not targeted at crypto.)
>
> What I'm saying is: while not having tested that, I believe
> that this implementation of DH is going to be susceptible to
> timing attacks. (And if it isn't, the author should really
> provide some rationale why not, with some test results. The
> README is rather sparse, though.) Which would be fine if you
> just wanted to use this library to generate the DH prime
> itself (that is not timing critical), or just use it in an
> academic context (to let people play around with DH), but
> I'd not want to use this for real-world applications of the
> actual key exchange protocol.

I have planned to add a big fat warning about safety of
browserify-crypto. I am myself unease to use it but it is needed for
browserify.

Do you prefer a README.debian per pure js crypto package ?

I plan to patch browserify and add a flag in order to use the crypto API.



>
> Regards,
> Christian
>
> [1] Especially if this is to be run in browsers, with
> different JITs etc. Designing algorithms in pure JS
> for these environments that are timing-safe looks rather
> daunting to me.



Re: Bug#860771: ITP: node-diffie-hellman -- pure js diffie-hellman

2017-04-20 Thread Christian Seiler
On 04/20/2017 11:09 AM, Bastien ROUCARIES wrote:
> I have planned to add a big fat warning about safety of
> browserify-crypto. I am myself unease to use it but it is needed for
> browserify.
> 
> Do you prefer a README.debian per pure js crypto package ?

Maybe also add something along the lines of

| For security considerations of this package please consult
| README.Debian.

to the package's extended description? (Or is that against
policy?)

> I plan to patch browserify and add a flag in order to use the crypto API.

Isn't browserify a JS minifier? Why would that need DH key
exchange anyway? I'm a bit confused here...

Regards,
Christian



Work-needing packages report for Apr 21, 2017

2017-04-20 Thread wnpp
The following is a listing of packages for which help has been requested
through the WNPP (Work-Needing and Prospective Packages) system in the
last week.

Total number of orphaned packages: 1064 (new: 0)
Total number of packages offered up for adoption: 160 (new: 1)
Total number of packages requested help for: 43 (new: 0)

Please refer to http://www.debian.org/devel/wnpp/ for more information.



No new packages have been orphaned, but a total of 1064 packages are
orphaned.  See http://www.debian.org/devel/wnpp/orphaned
for a complete list.



The following packages have been given up for adoption:

   rbtools (#860552), offered 2 days ago
 Description: set of client tools to use with Review Board
 Installations reported by Popcon: 76
 Bug Report URL: http://bugs.debian.org/860552

159 older packages have been omitted from this listing, see
http://www.debian.org/devel/wnpp/rfa_bypackage for a complete list.



For the following packages help is requested:

   autopkgtest (#846328), requested 141 days ago
 Description: automatic as-installed testing for Debian packages
 Reverse Depends: debci-worker openstack-pkg-tools
 Installations reported by Popcon: 775
 Bug Report URL: http://bugs.debian.org/846328

   balsa (#642906), requested 2034 days ago
 Description: An e-mail client for GNOME
 Reverse Depends: balsa-dbg
 Installations reported by Popcon: 692
 Bug Report URL: http://bugs.debian.org/642906

   busybox (#854181), requested 75 days ago
 Description: Tiny utilities for small and embedded systems
 Reverse Depends: bootcd busybox-syslogd dropbear-initramfs
   live-boot-initramfs-tools open-infrastructure-system-boot udhcpc
   udhcpd wicd-daemon zfs-initramfs
 Installations reported by Popcon: 194431
 Bug Report URL: http://bugs.debian.org/854181

   cargo (#860116), requested 9 days ago
 Description: Rust package manager
 Installations reported by Popcon: 455
 Bug Report URL: http://bugs.debian.org/860116

   cups (#532097), requested 2875 days ago
 Description: Common UNIX Printing System
 Reverse Depends: bluez-cups boomaga chromium
   cinnamon-settings-daemon cloudprint cups cups-backend-bjnp
   cups-browsed cups-bsd cups-client (66 more omitted)
 Installations reported by Popcon: 177971
 Bug Report URL: http://bugs.debian.org/532097

   cyrus-sasl2 (#799864), requested 575 days ago
 Description: authentication abstraction library
 Reverse Depends: 389-ds-base 389-ds-base-libs 389-dsgw adcli
   autofs-ldap cairo-dock-mail-plug-in claws-mail
   claws-mail-acpi-notifier claws-mail-address-keeper
   claws-mail-archiver-plugin (127 more omitted)
 Installations reported by Popcon: 195770
 Bug Report URL: http://bugs.debian.org/799864

   dee (#831388), requested 279 days ago
 Description: model to synchronize mutiple instances over DBus
 Reverse Depends: dee-tools gir1.2-dee-1.0 libdee-1.0-4-dbg
   libdee-dev zeitgeist-core
 Installations reported by Popcon: 64229
 Bug Report URL: http://bugs.debian.org/831388

   developers-reference (#759995), requested 964 days ago
 Description: guidelines and information for Debian developers
 Installations reported by Popcon: 19004
 Bug Report URL: http://bugs.debian.org/759995

   devscripts (#800413), requested 569 days ago
 Description: scripts to make the life of a Debian Package maintainer
   easier
 Reverse Depends: apt-build apt-listdifferences aptfs arriero
   bzr-builddeb customdeb debci debian-builder debmake debpear (24 more
   omitted)
 Installations reported by Popcon: 12993
 Bug Report URL: http://bugs.debian.org/800413

   ejabberd (#767874), requested 899 days ago
 Description: distributed, fault-tolerant Jabber/XMPP server written
   in Erlang
 Reverse Depends: ejabberd-contrib ejabberd-mod-cron
   ejabberd-mod-log-chat ejabberd-mod-logsession ejabberd-mod-logxml
   ejabberd-mod-message-log ejabberd-mod-muc-log-http
   ejabberd-mod-post-log ejabberd-mod-pottymouth ejabberd-mod-rest (4
   more omitted)
 Installations reported by Popcon: 648
 Bug Report URL: http://bugs.debian.org/767874

   fbcat (#565156), requested 2654 days ago
 Description: framebuffer grabber
 Installations reported by Popcon: 201
 Bug Report URL: http://bugs.debian.org/565156

   fgetty (#823061), requested 355 days ago
 Description: console-only getty & login (issue with nis)
 Installations reported by Popcon: 1726
 Bug Report URL: http://bugs.debian.org/823061

   freeipmi (#628062), requested 2156 days ago
 Description: GNU implementation of the IPMI protocol
 Reverse Depends: conman freeipmi freeipmi-bmc-w