News for hackers. Stuff that matters.
Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by Karunamon on Tuesday April 26, 2016 @01:23PM (#11573792)
I'm not clear on what exactly your problem is here.
Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by d_theorist on Tuesday April 26, 2016 @02:01PM (#11574160)
This is a piece of software that we are supposed to trust with our passwords. It depends on a long list of crappy bloated software, including something from an apparently-non-standard source, and including a package manager that is probably going to pull in yet more untold reams of crappy, unaudited, JavaScript code from the four corners of the internet at build time. It would not surprise me if this ended up clocking in at millions of lines of code by the time it built.

Just say no.

Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by dsp1234 on Tuesday April 26, 2016 @02:42PM (#11574471)
It depends on a long list of crappy bloated software

If you don't actually want to test the software, and just want to create a production mobile/desktop application, then it depends on codova, cordova-icon, cordova-splash, semver and it's own source code. That's not a long list. If you want to test it, then it's probably not a shock that it pulls in testing frameworks for testing javascript UIs.

including something from an apparently-non-standard source

Here are the listed requirements from above:

http://nodejs.org/

npm install -g cordova

npm install -g grunt-cli

http://phantomjs.org/

npm install -g cordova-icon and npm install cordova-splash

Can you point out which of these is 'apparently-non-standard'?

Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by pritambaral on Tuesday April 26, 2016 @03:08PM (#11574660)
> That's not a long list

It's not the list of top-level pieces of software, it's the amount of code that could have contact with the plaintext or the encryption keys.

> If you don't actually want to test

And build! Don't forget the building itself. It's not so much harder to exploit an app even if all you have access to is its build stage.

----

This is security software we are talking about. The more lines of code that touch it, the more risky it is of being vulnerable. Not to mention the sheer astronomical difficulty of auditing it. From what I know of the industry, I wouldn't be surprised if a security auditor plain refused to touch this because of the sheer magnitude.

And that's without even mentioning it uses npm.

Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by Freak_NL on Tuesday April 26, 2016 @03:36PM (#11574892)
A valid concern for a password manager. This is why I like PasswordStore a lot better for managing passwords and other sensitive information. It is a Bash script that only depends on a very select list of binaries (gpg, git, and tree, if I recall correctly). It is also a script simple enough I can even audit it myself:

https://www.passwordstore.org/

For syncing, either use git, or something like syncthing. It doesn't really matter, because all synced files are encrypted by GnuPG before any syncing tools gets access to it.

Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by mmanfrin on Tuesday April 26, 2016 @04:09PM (#11575175)
You can build without grunt. Grunt just makes the flow a lot easier to manage.
Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by pritambaral on Tuesday April 26, 2016 @05:07PM (#11575634)
Grunt is not the problem. It's using the npm ecosystem, the thousands of different codebases that I have little guarantee of constance over, that is the problem. Even using node.js alone (and no npm, no other libraries) would be extremely hard to audit, simply because of the huge code footprint of v8 alone. But at least I can download all the sources one time, audit it, and be certain every future build with the exact same versions would be safe.

npm doesn't provide even that much guarantee.

Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by dsp1234 on Tuesday April 26, 2016 @01:34PM (#11573893)
I'm also curious about what the problem is. If the goal is a simple API client that has iOS/Android/Desktop compatibility, then Cordova seems a reasonable choice. Would the above commenter have preferred 4+ separate projects instead?
Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by jernfrost on Tuesday April 26, 2016 @05:52PM (#11576018)
You seem to imply 4 projects is 4x the time. In my experience I spent more than 2x the time just getting a Cordova project up an running compared to just building the whole dam thing from scratch on iOS. Why? Cordova kept changing all the time. Documentation sucked. It was buggy. The tools were substandard and it had inconsistent behavior across platforms. Terrible experience. I have colleagues who had the same terrible experience but they still cling to the idea that it will somehow work out in the end. The idea of one code to rule all the platforms is just too enticing.

I don't doubt that some people will be more effective at using Cordova. The problem is people treat this decision as if it is independent of the people who will build the solution. Somebody with years of training doing JavaScript and practically no experience with writing native code will likely be much faster with Cordova. That is why these projects exist in the first place. There are so many JavaScript developers out there. For them even a crappy setup like Cordova will still be faster than native development.

But in reverse if you actually got good experience with native platforms and know the tools, Cordova is not going to deliver. You wont have access to the kind of debugging tools, editors, type checking, GUI builders, documentation etc you get on a native platform, which makes a native developer work efficiently.

Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by frabbit on Tuesday April 26, 2016 @01:37PM (#11573915)
I assume it's against a bunch of dodgy software from a source which is perceived as being less eyeballed than a distribution's repository.
Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by wyager on Tuesday April 26, 2016 @01:37PM (#11573921)
Not that guy, but that's a ridiculously bloated set of requirements.
Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by BinaryIdiot on Tuesday April 26, 2016 @01:59PM (#11574131)
Almost all of those requirements are only for developing / testing the repository. That's not uncommon for most languages / projects.
Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by Karunamon on Tuesday April 26, 2016 @01:41PM (#11573952)
The language it's written in, the testing framework, and the support library that lets it target more platforms? That doesn't seem too bloated to me.
Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by pritambaral on Tuesday April 26, 2016 @03:12PM (#11574690)
> That doesn't seem too bloated to me.

For a security software? It may not be too bloated for a web app, but for a piece of security software it is absolutely bloated.

Note: I'm not talking from a utility point-of-view, that "C'mon, writing a security-related app doesn't have to use so much stuff".

I'm talking from a safety point-of-view, that "Security stuff should absolutely not have such a large code footprint".

Re:SpiderOak Encryptr – Zero-Knowledge Password Syncing by mmanfrin on Tuesday April 26, 2016 @04:09PM (#11575170)
But... it really isn't. This is kind of the norm for node projects + cordova stuff.