HN user

cryptolect

367 karma
Posts3
Comments89
View on HN

In case nobody has pointed it out yet.

By default, with Ubuntu's dnscrypt-proxy package - the resolver is "cisco".

That's right, you're encrypting your DNS traffic just so Cisco can read it...

There are alternate resolvers but most people wouldn't change it out of the box.

Ever since I realized there will be a persistent log of my browsing history maintained by one or more government agencies, I have mentally-marked http as risky. I cannot wait for something like this to happen, and encourage the wider less-informed community that TLS is critical for both trust (properly implemented, TLS will provide protection against tampering and data leakage) and to provide a minimum level of privacy (I can see you visited site x, but not what sections of it). Bring it on.

Considering the functionality that wasn't reviewed, I don't think it should be advertised as "A".

It might be "A" for the expected permissions, but if there's extra permissions which haven't been investigated, these should be marked down until explained. This would encourage app owners to work with whoever maintains the database to get accurate ratings. If Whatsapp is an A today, there's no incentive for the developers to justify / assist with anything unexplained permissions remaining.

In it's current state, if it's awarding A scores while significant permissions are unexplained, it doesn't help the end user.

This is a wonderful example of NSA meddling. With one hand, Microsoft gives everyone out-of-box encryption, which it can use to demonstrate how well it's protecting consumers. With the other hand, by virtue of a 'feature' to assist consumers, it's providing access to the NSA via SkyDrive copies of encryption keys. Everyone's happy!

Best of all, enterprise customers don't have a reason to complain, because the SkyDrive backup 'feature' shouldn't apply to their deployment scenarios. The only people with a complain are those that use the default option.

We should keep vigilant for these security 'features' that are undermined by implementation. The NSA has years of practice at this, and we're playing catchup.

So subtlety and obfuscation to make good ideas sound bad (serpent), and bad ideas attractive (in the interest of performance and practicality).

So when any standards body recommends a particular cryptographic approach, we should ask why, and then why again.

I've been looking into ocaml, and was wondering what to do once my programs grow beyond a single file. Unfortunately it doesn't have the equivalent of 'lein new' (Clojure tool for creating a new, empty project skeleton), so I'd welcome a repository of best practice examples like skeleton.io.

I'm sick of knowing about things and not jumping in early. So rather than brag that I knew about Ethereum before everyone else did, yet not have any, I figured I'd get some to play with.

Apparently they made the SafeCoin IPO (safecoin being the altcoin/blockchain that powers MaidSafe) available to purchase with both MasterCoin and Bitcoin. Based on exchange rates at the time, it was possible to get more SafeCoins if you purchased with MasterCoin, than if you used Bitcoin (since MasterCoin was so cheap).

Some people thought they could take advantage of the situation, and bought up MasterCoin to purchase SafeCoin. However it sounded like the IPO purchase cap for MasterCoin purchases was filled quickly, meaning a lot of people were left holding near-worthless MasterCoin. Thus began the cries of "Mastercoin pump and dump", which the IPO had (inadvertently?) caused.

MaidSafe sounds intriguing, but the one thing that gives me pause is their licensing page (http://maidsafe.net/developers-licensing), which says that any non-GPL MaidSafe codebases requires 1% revenue fee. I still dont know if that means I can or can't create my own MaidSafe application from MaidSafe compatible libraries that I've written myself, without having to pay them. I also don't know if they have some sort of central enforcement mechanism to prevent such an Application from working on the MaidSafe network. I can only hope they start releasing example code and applications soon to clear up the confusion.

How big/complex were your functions? Have you seen the style guide? It's easy to write really powerful, nested functions in Clojure, which are damn hard to read the next morning. Taking advantage of thread-first and thread-last macros can really help here. I've finally started to use them heavily. For instance, you could do the following to read a file, parse it from json, and retrieve somekey:

  (:somekey (cheshire/parse-string 
              (slurp "/tmp/somefile.json") true)
Or
  (-> "/tmp/somefile.json" 
      (slurp)
      (cheshire/parse-string true)
      (get :somekey))
In other words, there's much nicer ways to write maintainable, readable code that you can still understand in the morning.

Your "jumping around" comment also makes me wonder how you were laying out your functions? My advice is to go through the libraries of the popular Clojure libraries, you will discover a lot of good practices. It's taken me a few months of Clojure to start writing cleaner, readable code.

I use prismatic/schema which can be used to define schemas and either validate on demand, or always-validate function inputs. Very useful and easy to add.

Frozen Funds 12 years ago

I'm so glad I moved on from them a few months ago. Now, to make sure I only have my minimum funds on the current exchanges I use...

I suppose I should also delete my Vircurex api library while at it.

Coming from Ruby, when I last looked at Go about 5 months ago, I was dismayed at the package management state. My specific concern was around version pinning. I'll be excited to try out Cargo when it launches.