Archive for Microsoft

Blockchain! What is it Good For?

Blockchain

This blog post was also published on Amalgam Insights.

Blockchain is one of those up and coming technologies that is constantly being talked about by vendors and pundits. Many of the largest IT companies – IBM, Microsoft, and Oracle to name few – plus an industry group or two are heavily promoting blockchain. Clearly, there is intense interest, much of it fueled by exotic sounding cryptocurrencies such as Bitcoin and Ethereum. The big question I get asked – and analysts are supposed to be able to answer the big questions – is “What can I use blockchain for?”

To begin with, the best applications of blockchain are those that require an authenticated source. Blockchain (sort of) provides an immutable proof of the a virtual or material object’s authenticity. Using cryptography to generate unbreakable codes (for the moment) that take a lot of resources to generate insures that hacking the authenticity of a blockchain is not feasible. This is what made it attractive as a currency. Blockchain makes it hard to create a forgery of the “coin” while supporting changes of ownership.

Another indicator that blockchain may be useful for an application is when lack of a central authority to manage transactions is desirable or unattainable. Blockchain allows for participants to interact as peers without a clearinghouse to moderate the transactions. Credit cards, for example, are transactions between consumers who want to buy something and merchants who want to sell them. Visa, American Express, Discover, and Mastercard enable these transactions by clearing them between the banks of the buyer and seller. Without the clearinghouse, credit cards wouldn’t work. In the case of Bitcoin, changes in ownership are recorded in the blockchain that underlies the currency and distributed to all parties participating in Bitcoin.

I’m oversimplifying the complexity of blockchain, of course. That doesn’t change the fact that the best blockchain applications will be those that require authentication and lack a central authority to grant it. Some examples of these type of applications are:

  • Material supply chains. Blockchain holds promise as a way to inhibit counterfeit parts from entering the supply chain. The blocks in the chain represent parts that can be transferred from owner to owner. This would produce a history of where the part originated and where it has been as it moved through the supply chain. A hash can identify the part and the ledger agreed to by all participants in the supply chain since they all have a copy of it.
  • Transportation. Similar to material supply chains, blockchain shows potential to help track shipments along a series of routes, even while the shipments change hands between different carriers. This can keep shipments from being diverted or stolen.
  • Smart contracts. Blockchains can represent a contract, it’s amendments, and agreement to the final document. Unlike many electronic contracts, all parties would have a complete copy of the entire history of the agreements made within the contract and it will be hard to dispute the “signatures” later. The contract can be agreed to without a third party, such as Docusign, or the potential for forged signatures.
  • Professional credentials. It is not news that job seekers will sometimes inflate or falsify their academic credentials. In some cases, job seekers go so far as to claim doctorates that they never earned. Now, imagine how easy it might be to claim technical credentials that are conferred by training organizations that may not exist forever. There are also plenty of professions such as medical, dental, and law, where a constant stream of new learning is required to maintain licensing. In all of these cases, blockchain could be used to create a trustworthy method of verifying credentials that can easily be shared with anyone to prove their authenticity.
  • Personal identification. Almost everyone has had their email system hacked at some point or another. This is an example of someone stealing an aspect of someone’s electronic identity. The same is true for credit card numbers, social security numbers, and other forms of personally identifying information. If personal identification was actually a blockchain, this would be much more difficult since thieves would have to steal something that is never shared online. Blockchain hold the promise of online authentication that is harder to hack then even two-factor authentication.

Some of these are purely speculative though plausible. Others, especially the professional credentials, transportation, and material supply chains applications are already under development.

Like so much interesting technologies, the hype is a bit early and probably overstates the technology. We shouldn’t let the hype undermine blockchain’s potential nor dissuade developers from exploring its usefulness. There are so many instances where authentication of transactions is hard but necessary and a central authority doesn’t exist or is undesirable. These are just the early emerging applications – the low hanging fruit – and it is hard to predict the good ideas developers will come up with for blockchain.

The Specter of Spectre (and Meltdown)?

CPU Usage

About a month ago, my desktop computer started having problems. Weird problems. For example, loading an uncached website was exceeding slow. I thought that maybe that was because of a network issues or something was up with Firefox. After a bit of digging around I realized that was unlikely. The same problems happened with both Microsoft Edge and Google Chrome. Speed tests from my browser and router were within normal parameters.

About the same time I began to have issues with Outlook. Specifically, Outlook would be very slow to synch IMAP accounts. I have several email accounts that I access via IMAP and updating them all would often so slow that Outlook would hang or crash.

There were other applications affected, especially when running a number of Office applications or streaming music from Spotify while working. Could it be a virus? Unlikely. Unless it’s a very new and stealthy one, my anti-virus would have picked it up. Hardware problem? Everything checked out. Something in Windows corrupt? Not seeing the usual signs of that and the Ubuntu BASH shell is also running pretty slow. It would have to be a pretty deep DLL issue to have that type of effect.

What I finally realized is that my problems began after a recent Windows update. This would be the update with the patch for Meltdown and Spectre. Could the patch have dramatically affected the performance of my PC this much? It’s certainly possible. A patch that changes how the chip handles parallel and concurrent operations would make sense as the culprit. Programs that download multiple components from the internet or are trying to synch several folders from multiple IMAP accounts at once would also be impacted more from kernel level patches.

I can’t tell. Does anyone have solid evidence of Windows 10 patches slowing down basic applications like Browsers or Outlook? Who else is seeing these same issues? Let me know.