<?xml version="1.0" encoding="UTF-8"?>
<rss version='2.0' xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Peter Bronez</title>
    <description>🦾 Seek Truth Faster 🚀 // 🇺🇸Democracy Forever🌻 //  👉🏼 Opinions my own 👈🏼</description>
    <link>http://www.peterbronez.com/feed</link>
    <atom:link href="http://www.peterbronez.com/feed" rel="self" type="application/rss+xml"/>
    <category domain="www.peterbronez.com">Content Management/Blog</category>
    <language>en-us</language>
      <pubDate>Sun, 25 Oct 2015 18:00:40 -0400</pubDate>
    <managingEditor>pbronez@fastmail.com (Peter Bronez)</managingEditor>
      <item>
        <guid>http://www.peterbronez.com/lastpass-got-acquired-are-we-screwed#19013</guid>
          <pubDate>Sun, 25 Oct 2015 18:00:40 -0400</pubDate>
        <link>http://www.peterbronez.com/lastpass-got-acquired-are-we-screwed</link>
        <title>LastPass got acquired - are we screwed?</title>
        <description>LastPass ÷ LogMeIn ⩼ 0</description>
        <content:encoded><![CDATA[<p><em>TL;DR: It&#39;s probably fine for now, but keep an eye out for key staff departures and major technology changes.</em></p>

<p>Change is scary, especially when it happens to your password manager.  When LastPass <a href="https://blog.lastpass.com/2015/10/lastpass-joins-logmein.html/">announced their acquisition</a> by LogMeIn, the news ignited such a panic that they had to shut down comments on the blog post. Lists of alternative password managers quickly appeared on <a href="https://www.reddit.com/r/sysadmin/comments/3o3c74/logmein_to_acquire_lastpass/cvtrzha">Reddit</a> and <a href="http://afaqurk.github.io/lastpass-alternatives/">Github</a> while <a href="https://news.ycombinator.com/item?id=10359491">HackerNews</a> swung wildly between outrage, calculation, and despair.</p>

<p>Now that the dust has settled a bit, let&#39;s figure out what&#39;s really going on here.</p>

<h1 id="why-do-we-love-lastpass">Why do we love LastPass?</h1>

<p>LastPass was founded in 2008 and build a market-leading company on a solid product and hard-earned user trust. Just a few months before the acquisition they earned a PC Magazine <a href="http://www.pcmag.com/article2/0,2817,2426845,00.asp">Editor&#39;s Pick</a> and were &quot;clearly the juggernaut&quot; in password management according to <a href="http://lifehacker.com/5529133/five-best-password-managers">LifeHacker</a>. They did this by addressing core password management requirements with a unique architecture, adding a suite of nice-to-have features, and clearly communicating with their users the whole way.</p>

<h2 id="core-needs">Core Needs</h2>

<h3 id="create-and-store-strong-passwords">Create and store strong passwords</h3>

<p>At this point, you know that <a href="http://arstechnica.com/information-technology/2013/06/the-secret-to-online-safety-lies-random-characters-and-a-password-manager/">you should use a password manager</a> to help you create and manage long, random, unique passwords for your online accounts. LastPass checks all the right boxes here:</p>

<ul>
<li>Flexible password generator to create new password</li>
<li>Powerful <a href="https://helpdesk.lastpass.com/account-settings/#URL+Rules">URL matching options</a> to map them to the right websites</li>
<li>Vault with search, folders, and icons to keep track of everything</li>
</ul>

<p>These tools are available pretty much wherever you need them. LastPass maintains extensions for all the major browsers (Chrome, Firefox, Safari, Internet Explorer, Opera) and applications for all the major platforms (Mac, Windows, Linux, iOS, Android, Windows Phone, Blackberry). </p>

<h3 id="make-them-available-on-all-my-devices">Make them available on all my devices</h3>

<p>LastPass provides all the key features you expect from a password manager, but so do several free open-source solutions like <a href="http://keepass.info/">KeePass</a> and <a href="http://passwordsafe.sourceforge.net/">PasswordSafe</a>. Unfortunately these options tend to break down when you need convenient access to your passwords on multiple devices.</p>

<p>Cross-device syncing solutions fall into three groups.</p>

<p>1) <strong>User-managed, explicit syncing</strong> is the most secure way to do any kind of sync task, but it&#39;s also the least convenient. In this model, you manually move your vault between your devices. You might keep your vault on a thumb drive or use a tool that supports <a href="https://support.1password.com/guides/mac/sync-wi-fi.html">Wi-Fi sync</a>.</p>

<p>2) <strong>Third-party continuous syncing</strong> means putting your password vault into Dropbox or network share drive. Syncing is managed by this third party while secure password storage is done by your management software. This is the primary method supported by <a href="https://support.1password.com/how-safe-is-cloud-sync/">1Password</a></p>

<p>3) <strong>Integrated sync</strong> builds cross-device sync directly into the password manager itself. This is the approach used by LastPass and <a href="https://www.dashlane.com/premium">Dashlane</a>.</p>

<p>Each of these options offers a different balance of security and convenience. User-managed is secure, but the high-friction sync task doesn&#39;t happen often enough, and you often wind up with out-of-date passwords on some of your devices. Third party syncing is pretty good, but you have to remember a secure password for your syncing service, that third-party service has to support all your platforms (difficult for mobile), and you&#39;re screwed if something like the <a href="http://malwarebattle.blogspot.com/2015/10/1password-password-manager-metadata.html">1Password metadata leak</a> shows up.</p>

<p>That leaves us with integrated sync. This is easy to use because you get automatic support for every platform your password manager supports, and the syncing happens automatically in the background. The real advantage though, is that you sync passwords separately from  your other cloud files, and that sync is provided by a security-first company. That means things like excellent support for multi-factor authentication and improved backend monitoring.</p>

<p>LastPass Premium ($12.00/yr) and Dashlane Premium ($39.99/yr) are pretty much the only password managers that provide integrated sync. LastPass delivers this critical feature for less than a third of the cost of it&#39;s only competitor.</p>

<h3 id="do-it-securely">Do it securely</h3>

<p>None of these features matter if the core security isn&#39;t there. Password managers need to be true <a href="http://zeroknowledgeprivacy.org/">zero-knowledge</a> services, meaning the service provider cannot ever see your passwords, even when providing syncing services.</p>

<p>Zero-knowledge means you don&#39;t have to trust the service provider to keep their eyes out of your password vault, because they&#39;d only see encrypted gibberish. You <em>do</em> have to trust them to actually implement the architecture they claim to have.</p>

<p>LastPass earned this trust the only way you can: openness &amp; third-party verification. Check out Steve Gibson&#39;s analysis on <a href="https://twit.tv/shows/security-now/episodes/256">Security Now episode #256</a> convinced a lot of people, myself included, that LastPass was doing it right:</p>
<iframe width="560" height="315" src="https://www.youtube.com/embed/r9Q_anb7pwg" frameborder="0" allowfullscreen=""></iframe>


<p>LastPass includes strong authentication options around their core zero-knowledge service. They have very <a href="https://helpdesk.lastpass.com/multifactor-authentication-options/">strong support</a> for <a href="https://en.wikipedia.org/wiki/Multi-factor_authentication">multi-factor authentication</a>, even for their free service.</p>

<p>Beyond a solid architecture, you have to trust that the company will handle security issues correctly. LastPass passes this test with flying colors. Their handling of a <a href="https://krebsonsecurity.com/2015/06/password-manager-lastpass-warns-of-breach/">June 2015 security incident</a> is a textbook example good corporate behavior:  clear communication and quick action.</p>

<h2 id="bonus-features">Bonus Features</h2>

<p>LastPass goes beyond these strong fundamentals to offer a variety of nice-to-have features, including:</p>

<ul>
<li>Secure sharing with other LastPass users</li>
<li>Native mobile apps with autofill &amp; integrated browsers</li>
<li>Security check up tool</li>
<li>Automatic password changes</li>
</ul>

<h1 id="has-the-logmein-acquisition-broken-lastpass">Has the LogMeIn Acquisition Broken LastPass?</h1>

<p>Not yet. All the things you love about LastPass are still basically true. It&#39;s only been a few weeks.</p>

<h1 id="will-they-change-in-the-future">Will they change in the future?</h1>

<p>That&#39;s the important question. Things will change if LogMeIn wants them to. They own the product, they call the shots.</p>

<h2 id="so-what-is-logmeins-deal-anyway">So what is LogMeIn&#39;s deal anyway?</h2>

<h3 id="the-good">The Good</h3>

<p>LogMeIn appears to be a holding company for a grab-bag of enterprise software products. <a href="https://www.join.me/">Join.me</a> is probably their best-known consumer offering. They&#39;re particularly excited about <a href="https://xively.com/">Xively</a>, which is some kind of consulting service that builds Heroku-based backends for Internet of Things products. You know, a typical SaaSaaS (Software-as-a-Service-as-a-Service) offering.</p>

<p>Their focus on enterprise cloud products means they probably have decent tech fundamentals. I&#39;ve only used Join.me, and it seems like a reasonable entry in the <a href="http://alternativeto.net/software/logmein-express/">crowded</a> online meeting space. It competes with Citrix <a href="http://www.gotomeeting.com/">GoToMeeting</a> and Cisco <a href="http://alternativeto.net/software/logmein-express/">WebEx</a>, which are both Very Serious Enterprise operations. It&#39;s not nuthin&#39;!</p>

<p>I&#39;ve seen a few people <a href="https://news.ycombinator.com/item?id=10363891">vouch</a> for LogMeIn&#39;s enterprise offerings.</p>

<h3 id="the-bad">The Bad</h3>

<p>LogMeIn has a history of sudden changes in pricing and product line up. Most complaints seem to focus on the fact that they:</p>

<ul>
<li>Discontinued <a href="http://blog.logmein.com/it-management/logmein-changes">LogMeIn Free</a> in 2014. Join.me is different and left some people out in the cold.</li>
<li>Acquired and &quot;<a href="https://news.ycombinator.com/item?id=10359671">ruined</a>&quot; <a href="https://en.wikipedia.org/wiki/LogMeIn_Hamachi">Hamachi VPN</a></li>
</ul>

<h3 id="the-ugly">The Ugly</h3>

<p>LogMeIn&#39;s remote desktop software <a href="http://www.troyhunt.com/2012/06/how-logmein-is-enabling-scammers-to.html">enables scammers</a>. All the big platforms have problems with abuse, but LogMeIn seems to be less concerned about more damaging activities than most.</p>

<h2 id="what-will-logmein-do-to-lastpass">What will LogMeIn do to LastPass?</h2>

<p>LastPass founder <a href="https://www.linkedin.com/in/joesiegrist">Joe Siegrist</a> laid it out in the initial announcement:</p>

<blockquote>
<p>This acquisition provides us with access to resources that will enable us to innovate faster, as we continue to strive to deliver an even better product than the one you have come to know and love.</p>
</blockquote>

<p>Joe reiterated this message when he appeared on <a href="https://twit.tv/shows/security-now/episodes/529">Security Now episode #529</a>:</p>
<iframe width="560" height="315" src="https://www.youtube.com/embed/p7-osq_y8i8" frameborder="0" allowfullscreen=""></iframe>


<p>And again in an update to the original announcement:</p>

<blockquote>
<p>I want to personally assure you that this is good news for our users.  First of all, we (LogMeIn/LastPass) have no plans to change our existing business model. Secondly, this acquisition provides us with access to resources that will enable us to innovate faster, as we continue to strive to deliver an even better product than the one you have come to know and love.</p>
</blockquote>

<p>I think it&#39;s safe to say that Joe believes the acquisition will be benefit  LastPass&#39; current customers by delivering a stronger product.</p>

<h3 id="so-what-will-that-look-like">So what will <em>that</em> look like?</h3>

<p>LogMeIn already has a password manager, <a href="https://www.meldium.com/">Meldium</a>. In fact, LogMeIn&#39;s press release about the LastPass acquisition specifically states that they plan to merge their Meldium product line into LastPass:</p>

<blockquote>
<p>LogMeIn plans to bring complementary capabilities of its early identity management investments, including those of Meldium, which it acquired in September 2014, into LastPass. In the near-term, both the Meldium and LastPass product lines will continue to be supported, with longer-term plans to center around a singular identity management offering based on the LastPass service and brand.</p>
</blockquote>

<p>I haven&#39;t used Meldium, but the marketing indicates that it does have some features that would be cool to see in LastPass. Specifically,</p>

<ul>
<li>Auto-login tools that are slicker than the current autofill/copy-paste workflow</li>
<li>Employee on-boarding tools for creating sets of accounts</li>
</ul>

<p>Unfortunately Meldium appears to be <em>much</em> less secure than LastPass. Check out this item from their <a href="https://www.meldium.com/security_faq">security FAQ</a>:</p>

<blockquote>
<p><strong>When is my data decrypted?</strong></p>

<p>The keys to decrypt your data are only stored on secure subset of Meldium&#39;s computers. These keys are stored as runtime configuration, and never checked in to source code. The computers that are able to decrypt your API keys, OAuth tokens, and passwords run in an isolated application that is not accessible to the public internet. This means that if Meldium&#39;s public-facing servers are attacked, the master encryption keys will not be compromised.</p>

<p>Your secrets are only decrypted when they are needed to perform some operation on your behalf (adding an account, disabling a user, logging in to a service, etc.) and the decrypted data is never written to disk or logged. In order to provide the best user experience, our systems periodically use your authentication information to refresh application data.</p>
</blockquote>

<p>Do you see the problem? It&#39;s this bit: &quot;the keys... are.. stored on... Meldium&#39;s computers.&quot; This means Meldium can see your passwords whenever they want. They have the keys, they have the power. You have to trust them not to look, and furthermore, not to ever get hacked.</p>

<p>This is made more explicit in a later FAQ item:</p>

<blockquote>
<p><strong>Is my data available to Meldium employees?</strong></p>

<p>Due to the architecture of our system, it is technically possible for a Meldium employee to gain access to your secret data. As a matter of corporate policy, this kind of access is forbidden. Therefore, we have strong internal controls in place to prevent this unlikely event. We never manually decrypt your data, even when debugging issues with our systems or with third parties. We&#39;ve built a suite of internal tools that allow an operator to perform actions using your secret data without actually logging in to our secure fleet.</p>

<p>A limited set of Meldium employees have access to the secure fleet and the master encryption keys - this access is only granted to employees for whom it is absolutely necessary. Third-parties or contractors will never gain access to Meldium&#39;s secure hosts or master keys, or your secret data. All internal access to all of Meldium&#39;s systems (secure or otherwise) is logged and audited.</p>
</blockquote>

<p>So Meldium is fundamentally a big bag of NOPE that violates the  zero-knowledge principals that LastPass is built on. Hopefully LogMeIn recognizes the problem here and will base their future identify management tools on LastPass rather than Meldium.</p>

<h1 id="red-flags-to-watch-for">Red Flags to Watch For</h1>

<p>It&#39;s unsettling to watch an essential service like LastPass go through an acquisition, but it&#39;s too early to panic. I plan to continue to use (and pay for) LastPass for the time being.</p>

<p>That said, be vigilant! Here are some key red flags that would indicate it&#39;s really time to jump ship:</p>

<h2 id="pricing-chaos">Pricing chaos</h2>

<p>LogMeIn has irked users with pricing changes in the past. If they start tweaking LastPass, we&#39;ll probably see:</p>

<ul>
<li><strong>Elimination of the free tier</strong>, reducing the value of sharing features and forcing you to re-train all your relatives who won&#39;t pay for premium</li>
<li><strong>Significant increases in Premium pricing.</strong> LastPass premium is a great deal at $12/year; watch for this to creep up.</li>
<li><strong>Unstable enterprise pricing.</strong> LogMeIn clearly has an enterprise focus, and probably have big ideas about how much they should charge and what markets to target. This could result in small / medium business being left behind.</li>
</ul>

<h2 id="key-staff-departures">Key Staff Departures</h2>

<p>Business is business, so some price changes are to be expected. Changes in philosophy are much more important, and those would show up as key staff departures.</p>

<p>Joe and his team have worked hard to earn user trust. If they leave, they&#39;ll take that critical user trust with them. This disaster would look a lot like when <a href="http://www.inquisitr.com/2237652/victoria-taylor-fired-reddit-employee-breaks-silence-appears-to-encourage-protesters/">Victoria Taylor left Reddit</a>. Nobody wants that.</p>

<h2 id="unsettling-product-changes">Unsettling product changes</h2>

<p>Finally, if Meldium&#39;s auto-login features show up in LastPass, we need assurance that it&#39;s done with LastPass-grade security rather than Meldium-grade security. Zero-knowledge or bust!</p>

<h1 id="conclusion-a-final-exhortation">Conclusion: A Final Exhortation</h1>

<p>Congratulations to Joe &amp; the LastPass team on the acquisition, a $110M validation of all your hard work. As a long time LastPass customer, I hope to see the tradition of great security, customer service and value continue for years to come.</p>
]]></content:encoded>
      </item>
      <item>
        <guid>http://www.peterbronez.com/Using PyPi Packages with Conda#1425</guid>
          <pubDate>Mon, 06 Jan 2014 17:05:04 -0500</pubDate>
        <link>http://www.peterbronez.com/Using PyPi Packages with Conda</link>
        <title>Using PyPi Packages with Conda</title>
        <description>Power of Conda + Breadth of Pypi = Environments that Work</description>
        <content:encoded><![CDATA[<p>This tutorial describes how to copy a <a href="https://pypi.python.org/pypi">Pypi</a> package over to the <a href="https://binstar.org/">Binstar</a> package index so you can easily use it in <a href="http://conda.pydata.org/">Conda</a> environments. You can cut Binstar out of this process, but using Binstar allows you to <code>conda install</code> the package anywhere you like rather than keeping track of the tarball manually.</p>

<h1 id="why-is-this-useful">Why is this useful?</h1>

<p>Python&#39;s package management is a <a href="http://aosabook.org/en/packaging.html">known pain point</a>, and it&#39;s especially acute for analytic packages that have C and FORTRAN dependencies. Conda has several advantages over the now-standard <code>pip</code> + <code>virtualenv</code> combination:</p>

<ul>
<li>Package and environment management are handled by the same tool</li>
<li>Improved handling of environments with different interpreters</li>
<li>Provides binary, precompiled packages for your system (<a href="http://lucumr.pocoo.org/2012/6/22/hate-hate-hate-everywhere/">pip does not</a>)</li>
</ul>

<p>Conda is open source, but most useful when bundled in Continuum Analytics&#39; <a href="https://store.continuum.io/cshop/anaconda/">Anaconda</a> python distribution, which I&#39;ve been using since Enthought killed <a href="https://www.enthought.com/products/epd/">EPD Free</a>.</p>

<p>Continuum Analytics is happy to <a href="https://speakerdeck.com/teoliphant/packaging-and-deployment-with-conda">tell you about why they like Conda</a>. Unfortunately, pip and Pypi integration doesn&#39;t work quite as well as they suggest:</p>

<ul>
<li><code>conda install</code> doesn&#39;t gracefully fall back on <code>pip install</code></li>
<li><code>pip install</code> within Conda environments doesn&#39;t really work</li>
<li>Conda is not as aware of pip <a href="https://groups.google.com/a/continuum.io/forum/#!topic/anaconda/JjFXwT0cSBg">as it should be</a></li>
<li>Conda uses a different package format than pip, so it can&#39;t use the Pypi repositories directly.</li>
</ul>

<p>tl;dr: Conda/Anaconda are great, but they can&#39;t access everything on PyPi out of the box. How can we fix that? Read on!</p>

<h1 id="bringing-a-pypi-package-to-conda">Bringing a PyPi package to Conda</h1>

<p>The process is pretty straightforward:</p>

<ol>
<li>Sign up with Binstar</li>
<li>Build a Conda package from the PyPi package and upload to Binstar</li>
<li><code>conda install</code> as needed</li>
</ol>

<p>Let&#39;s look at each step.</p>

<h2 id="sign-up-with-binstar">Sign up with Binstar</h2>

<p>Create an account at <a href="https://binstar.org/">https://binstar.org/</a>. Accounts are currently free and open to the public without a beta code.</p>

<p>Create a <code>.condarc</code> file so Conda knows where to find your packages. The template is:</p>
<div class="highlight"><pre><span></span><span class="c1"># This is a sample .condarc file</span>
<span class="c1"># a condarc file should be placed in $HOME/.condarc</span>

<span class="l l-Scalar l-Scalar-Plain">channels</span><span class="p p-Indicator">:</span>
  <span class="p p-Indicator">-</span> <span class="l l-Scalar l-Scalar-Plain">defaults</span>
  <span class="p p-Indicator">-</span> <span class="l l-Scalar l-Scalar-Plain">http://conda.binstar.org/&lt;username&gt;</span>
</pre></div>
<h2 id="build-the-conda-package">Build the Conda package</h2>

<p>This can be complicated, but it usually isn&#39;t. As recommended on <a href="http://stackoverflow.com/questions/18640305/how-to-keep-track-of-pip-installed-packages-in-an-anaconda-conda-env">StackOverflow</a> you can generally just:</p>

<p><code>conda skeleton pypi PACKAGE</code><br>
<code>conda build PACKAGE</code></p>

<p>If you want to take more control over this process, check out Continuum&#39;s <a href="https://github.com/pydata/conda-recipes">collection of recipes</a> on GitHub and read over Conda&#39;s <a href="http://docs.continuum.io/conda/build.html">build documentation</a>.</p>

<p>During the build phase Conda will ask if you want to upload the package to Binstar. Say yes and provide your binstar login information. The package will be uploaded to your personal package index.</p>

<h2 id="install-from-binstar">Install from Binstar</h2>

<p>You can now install the package into any conda environment with <code>conda install &lt;package&gt;</code>. If you run into trouble, check <code>conda info</code> to make sure that your personal binstar url shows up under &quot;channel URLs.&quot;If it doesn&#39;t, double-check your <code>.condarc</code> file.</p>
]]></content:encoded>
      </item>
      <item>
        <guid>http://www.peterbronez.com/archive-all-messages-in-a-gmail-inbox#866</guid>
          <pubDate>Thu, 21 Nov 2013 16:24:55 -0500</pubDate>
        <link>http://www.peterbronez.com/archive-all-messages-in-a-gmail-inbox</link>
        <title>Archive All Messages in a Gmail Inbox</title>
        <description>A little hack to restore a useful feature</description>
        <content:encoded><![CDATA[<p>I just discovered that Gmail&#39;s <a href="http://thegamerwithkids.com/2010/12/08/gmails-new-select-all-conversations-in-inbox-feature/">&quot;Select All … Conversations in Inbox</a> feature has <a href="http://webapps.stackexchange.com/questions/49657/how-to-mark-as-read-all-mail-in-gmail">disappeared</a>, leaving users with no clear way to apply an action to their entire inbox. Sure, you could hit the little checkbox to &quot;select all,&quot; but it really only selects 50 messages at a time, which is useless when you&#39;re dealing with 10,000+ Facebook updates. Fortunately, there&#39;s a work-around.</p>

<p>To archive all the emails in your Gmail inbox:</p>

<ol>
<li>Enter <code>in:inbox</code> into the search bar</li>
<li>Press the search button or press <code>return</code> to run the search</li>
<li>Click on the small down arrow on the search bar and select <code>Create filter with this search</code></li>
<li>Click <code>OK</code> when warned that the filter will not apply to new mail</li>
<li>Select <code>Skip the Inbox (Archive It)</code> and <code>Also apply filter to X matching conversations.</code></li>
<li>Click <code>Create Filter</code></li>
</ol>

<p>Gmail will think for a moment, then <em>poof!</em> your inbox will be empty, with all your mail tucked away safely in your archive. It&#39;s a good idea to delete the filter you just created to avoid unwanted behavior. Just navigate <code>Settings</code> --&gt; <code>Filter</code> and delete the <code>in:Inbox</code> filter.</p>

<p>The great thing about this method is that it depends entirely on Gmail&#39;s filtering feature with no reliance on specific user interface features. That means it will keep working even when they break Compose again. It also means that you can use this method to bulk-process your email with any rules supported by filters. For example, you could mark everything as read by creating a filter for <code>is:unread</code> and applying the filter action <code>mark as read</code>.</p>

<p>Now sit back and enjoy the psychological breathing room of <a href="http://inboxzero.com/">inbox zero</a> / <a href="https://en.wikipedia.org/wiki/Email_bankruptcy">email bankruptcy </a>!</p>
]]></content:encoded>
      </item>
  </channel>
</rss>