Mike Ault's Blog

Mike Ault's thoughts on various topics, Oracle related and not. Note: I reserve the right to delete comments that are not contributing to the overall theme of the BLOG or are insulting or demeaning to anyone. The posts on this blog are provided “as is” with no warranties and confer no rights. The opinions expressed on this site are mine and mine alone, and do not necessarily represent those of my employer.

Sunday, February 18, 2018

Ethereum as a Competitor to Hyperledger


Ethereum as a Blockchain Competitor to Hyperledger

Ethereum, a cryptocurrency based on blockchain, is making a bid to become a competitor in the non-cryptocurrency uses of blockchain. In recent months Ethereum has released the ERC721 protocol for non-fungible assets for use with their blockchain. An example of the use of the ERC721 nonfungible token standard with Ethereum is the internet based trading of Cryptotkitties.

Ethereum as a basic cryptocurrency requires that the producer provide proof of work to create an Ether coin similar to Bitcoin. The creation of an Ether coin generates a block. The entity keeping the block and the creator establish a relation through the use of crypto-keys and wallets. A wallet can be as simple as a piece of paper holding the keys or a fully secure electronic wallet. If the key values are lost there is no way for the holder of the Ether coins to get to their assets and they are forfeit.

Ethereum transactions have grown from just over a thousand transactions per day in August of 2015 to close to one million with a peak of 1,349,890 on January 4, 2018. As of February 18, 2018, the total Ethereum supply was 97,693,097.41 with a market capitalization of $92,305,323,083 USD. The three supply types for Ethereum are Genesis, Block Rewards and Uncle Rewards with Genesis holding the majority supply at 72,009,990 coins.

Cryptokitties as a Non-Fungible Example

While Cryptokitties sounds frivolous and has no purpose other than to demonstrate PT Barnum's famous axiom, it shows the potential for this Hyperledger competitor. Cryptokitties are cartoon images of cats that have specific digital genes. When two of the Cryptokitties are bred by their owners, a proprietary algorithm is used to combine the digital genes and produce a new offspring with characteristics blended from both parents. People buy and sell these Cryptokitties using Ethereum cryptocurrency. Each Cryptokitty is supportedby a blockchain. The initial trading of Cryptokitties generated millions of dollars of activity and shut down the Ethereum network on their first day of trading, proving sometimes a project's worse enemy is success. You may laugh at this but a recent “rare” Cryptokitty sold for the equivalent of $110,000.00 USD. From their launch in November of 2017 to December 17, a mere 27 days, 153,739 kitties were bought and sold at a value of 16.6 million USD.

Changes to Ethereum

Ethereum currently uses proof of work (POW) as a basis, similar to Bitcoin. Ethereum wants to move to proof of stake (POS) to reduce computing requirements. Each Ethereum contract uses two components, gas and Ether. Gas is a subset of Ethereum and is used to pay for the transaction, the more gas you give, the more computing resource can be applied to your contract. It wasn’t clear what happens to the resource (measured in Wei) represented by gas, it could be assumed that is collected by the Ethereum resource provider as payment for use of the Ethereum network. Wei is the Ethereum currency and is what is traded in a non-ERC721 token. The fungible type of token is based on ERC20 fungible token standard and is how Ether is traded.

Getting Gas

In Ethereum, gas is a measure of computational effort. Each operation is accorded a fixed amount of gas. A possible example would be doing a simple addition would cost 3 gas, doing a hash, 30 and sending a transaction 21000. A single unit of gas is fixed in price at 10 Szabo which is 1/100,000 of an ether (a single Ethereum coin.)

Ethereum Denominations

Ether is measured in Finney, Szabo and Wei. Finney was named for Hal Finney, the first bitcoin user after Satoshi Nakamoto. The Szabo is named for Nick Szabo who developed bit gold and the concept of smart contracts and the Wei is named for Wei Dai who developed the concept of bit-money.

ERC20 and ERC721

ERC20

ERC stands for Ethereum Request for Comments and is the protocol for creating Ethereum standards. ERC20 defines how Ethereum coins are defined. Coins are not differentiated by serial number and can be broken down in increments as small as 0.000001 Ether. There is no difference between any Ethereum coin and another, a digitization of the concept of a real coin. By law a paper currency must be serialized giving each bill a unique identification, however coins do not have this restriction, so any coin is treated like any other, this is the basis of the ERC20 fungible token.

ERC721

ERC721 is a way to create unique asset identifiers in Ethereum allowing the Ethereum blockchain to be used to track unique assets as well as standard Ethereum coins. An ERC721 defined asset cannot be portioned, it is sold or bought in its entirety. For example, the concept of buying a fractional Cryptokitty is impossible. This ERC721 can be used to generate a unique identifier for any non-fungible asset such as art, land, diamonds or other non-currency assets.

Cost of storage

A reoccurring issue in Ethereum is the cost of storage for the blockchain entries. It is assumed that to store in the Ethereum blockchain requires more gas per transaction. Since blockchains store data essentially forever, the cost is paid upfront for permanent storage. An example would be if the Interplanetary database (IPDB) is used to store blockchain values the cost for permanent storage is estimated to be $100 USD per gigabyte according to Jammila Omaar, and Internet Policy intern at IPDB foundation. Using storage cost models that incorporate pricing models based on storage of multiple copies and a backup with decreasing storage costs. One gig of storage can store many transactions with an estimate of 1000 transactions per 16 MB of storage. This type of cost is leading to the use of IPFS.

The internet protocol file system (IPFS), also known as the interplanetary file system, is a way of tagging a picture, document or other object and then using the tag in an Ethereum blockchain instead of storing the entire object. IPFS is envisioned as a distributed file system that seeks to connect all computing devices with the same system of files. IPFS is a versioned file system that tracks versions over time. IPFS is similar to bittorrent.

The computer object is scanned and a digital hash tag is generated that is unique (at least as unique as hash can be) for the object. The object is stored locally but referenced by that tag in the blockchain. The IPFS entry is two components, a data blob of less than 256kB and an array of links to other IPFS objects. The link has a name, the hash and the cumulative size of the linked object. Each time the object is reloaded it is re-scanned and the hash compared to the existing hash, if the hash is different the new hash is chained to the old and the object is versioned. This a peer-to-peer model where the hash is sent to the network and all participants are queried if they own the object represented by the hash. This indicates that in order for the ID to be useful the local storage must be accessible to all clients of the blockchain. The IPFS standard is still evolving and the security issues are rife. If someone attempts to scan the same object, or a copy, the same hash is given them. This begs the question: do they then get access to your copy utilizing your storage resources to access it?

Of course you don’t have to use IPFS and can store links to data in a local database or filesystem in the blockchain if desired.

Future goals of Ethereum

Listening to the presentations at ETHDenver 2018 showed that the goal of Ethereum is to replace fiat currencies with digital currency, the premise being that fiat currencies have nothing to back them while digital currencies do. None of the speakers seemed to give thought to the myriad of digital disasters that could devastate a digital-only currency. Essentially their goal is to replace currencies backed the good faith and credit of countries with one backed by computer algorithms. Why this is a better basis for currency was never made clear. Most of the primary presenters at the conference seemed to be out of western Europe. With this move towards non-fungible asset tracking in Ethereum it could be a credible contender against Hyperledger in the non-fungible asset tracking arena.

One of the goals of the ETHDenver hackathon was of course the hackathon itself. Nearly two dozen projects were pitched. Of the two dozen or so projects most were fluff. Several involved supply chain, a couple were to assist Colorado in tracking absentee voters and one was to help track sexual predators within the volunteer networks such as Doctors without borders and such. In listening to the people pitch their products I was left with questions as to whether they, or I, misunderstood the concept of Ethereum and blockchain as most of their applications could easily be done outside of Ethereum altogether as a simple App on a Iphone or Android. Of course, since the average age appeared to be mid to low twenties this could explain the leaning toward app like constructs.

Competing with Ethereum based Blockchain

The major limiting factor of Ethereum is the dependence on the concepts of tokens, gas and Ether itself. These concepts bind applications into using Ether coins as a basis of performing any transactions within the Ethereum environment as you must utilize gas to do any transaction in their computing model. They also still use POW and POS to generate transaction models which are computer and resource intensive. The major issues they discussed at EthDenver related to scalability and security of their models.

I believe IBM must get Hyperledger into the hands of these 20-something blockchain developers. Perhaps a Hyperthon hackathon in Raleigh or Atlanta where IBM or other sponsors offer prizes for the best Hyperledger based products with practical applications. Show how the Hyperledger permissioned model, which doesn’t depend on POW or POS, is a more scalable, flexible, as well as cost effective solution.

Ethereum Support

There are many startup companies based on Ethereum. Ehtereum Foundation, Consensys, POANetwork, Blockgeeks, Maiden, Satis, Gitcoin, Dharma Labs, Livepeer, Zeppelin Solutions, FBG Capital and BlockGeeks are just a few represented at ETHDenver. All have websites where they share whitepapers and Ethereum code examples.

Summary

The EthDenver was a fascinating look into the Ethereum universe. With Ethereum branching out into non-fungible assets they could become a competitor to Hyperledger if they can overcome scalability and security issues.

Sunday, January 28, 2018

Reloading

On most prepper boards you find a dichotomy when it comes to reloading ammunition. You have the die hard, have to do it, may not be able to buy it group and the don’t need it, buy preloaded, better quality in store bought group. I tend to side with the need it group. We are only one or two elections away from a democrat run house, senate and president which would be tough on ammo.

I see the way they will make guns useless is to run up the taxes and regulations on ammo. Maybe I just need to tighten my tin foil hat but trusting politicians with something as critical as the defense of my family is not in my nature.

I was finally able to get my reloading bench setup out in the shed today. Of course it has been a while since I reloaded so I will have to take it slow and careful the first couple of batches until I can get back in the rhythm. I usually load 9mm, 40cal and .38 special. I don’t shoot enough 7.62x39 or .223 or 5.56 to make it worthwhile but I do have the needed dies should I wish to do so. I also have dies for 7.62x59 and 8mm Mauser along with the needed size primers, bullets and type powder

Anyway, I will take some shots (with a camera)when I do some reloading and put out a how-to when I get back into it. Keep your powder dry!

Wednesday, January 24, 2018

Got a New Book Out, other writing news

I just realized I hadn't blogged abut my new book. I have published book two in the World In Darkness series, entitled: When Darkness Comes. The book picks up where book one left us, with the Lowmans all back together, but not for long! Hope you enjoy this post grid down post apocalyptic adventure.

I am also pursuing a screenplay with my Suppressors series. In speaking with a producer he felt it would make a great TV series. So here goes...of course much like Arthur C. Clarks The Sentinel was the germ of the idea that triggered the entire 2001 A Space Odyssey franchise, so is my first book in this series Suppressors: The Shattering  seemingly triggering an avalanche of ideas for series plots. I will try to keep you posted as this progresses.

I have also submitted my other books and few short stories from my Seeds of Wonder anthology for consideration as movies/TV series. Time will tell.

Status at 1/24/2018

Well, finally got the first server up and running and ready to install Oracle. Of course now I am at the stage where I have to do the install shuffle. The install shuffle is when you install a program on a pseudo-supported OS. Ubuntu falls under the pseudo-supported OS list for Oracle. What this means is that while you can get Oracle running on Ubuntu, don't count on Oracle for support. This means you need to have good Google or Bing skill to locate articles on why a particular subroutine or set of programs won't link.

Right now I am dealing with undefined issues with routines in PL/SQL libraries. I will keep you posted on my status.

Recently I was moved from FlashSystems/Oracle work into Financial Systems/ Blockchain/ FlashSystems/Oracle work. Loads to learn. I will be attending ETHDenver, an Etherium hackathon. Something tells me I will be one of the oldest in the room at most of the meetings.

I have submitted presentations for the IBM series of Technical Universities in Cairo, Dubai, Brazil, London and Orlando. If they are accepted I will be very busy in the March/April time frame. My paper was turned down for Collaborate so I guess I will be a booth bunny.

That is the news that is fit to print, see you around the blog sphere!


Thursday, February 02, 2017

Pasting up a Server

When you change out CPUs you have to remove the CPU heatsinks. The heatsinks are just held on with latched pressure levers. Between the CPU and the heatsink is thermal conduction paste. Now on old servers this will be mostly dried out and not very gooey, easy to wipe away when you remove the old CPU using a little paste dissolver. However, I had an interesting thing happen.

I installed the new CPUs and the new memory in both servers, using new heatsink thermal paste. The paste comes in a little injector looking thing exactly like the barrel end of a hypodermic. The paste is supposed to be for a single CPU install, but let me tell you, there is more than enough in a single applicator for two CPUs. Anyway, I got the new memory and CPUs installed and sealed up the servers and switched them on. Expecting to see that each had 2-quad core servers running at 3.16 Ghtz and 32 GB of memory, imagine my surprise when one showed up with a 2.66 and a 3.16 Ghtz CPU. Yep, they sent me the wrong CPU, and trusting me didn't check out the fine print on the CPU itself so here I am with a freshly installed CPU that was identical to the one I removed. Okay, so I needed to remove the lower speed CPU, call the supplier and get a replacement with the speed I asked for. Easy right? Here is where the fun starts.

Remember that heat transfer paste? Well when it is new, it is extra gooey and it turns out if you use the whole little injector on a single CPU a lot gets squeezed out to the sides making a mess of the CPU pad area and, unless you are very careful, it can easily get onto the CPU install pad itself. The problem is that the CPU install pad is actually a bunch of small hooked wires so you can't wipe the stuff off, you can't brush the stuff off, in fact the only option I can think of (now) would be to completely remove everything from the mother board, get some electronics spray cleaner and have at it. Unfortunately I tried wiping and then using a very fine brush to remove the embedded paper towel and the remaining paste. This resulted in many of those fine little hooked wires becoming fine little out-of-alignment straight wires. Scratch one CPU socket. Luckily Dell 2950s are still fairly available and I was able to order a replacement server for less than $200.00 delivered to my door. The replacement only had one 2 GHtz quad CPU and 4 GB of memory but that wasn't a concern.

So today my new-used server arrived and I gutted my old one to rebuild the new one in its image. Transferring the dual 4 GB HBAs, hard drives and remote access port from the old to the new and installing the just arrived quad 3.66 Ghtz CPU along with the existing one I had from the first attempt and using one of the heatsinks from the first server. Needless to say I was careful with the thermal transfer paste. Now I have two servers with dual Quad 3.66 GHtz CPUs and 32 GB of memory and they are both running Ubuntu 16.04.1-64 bit server software. They are talking to a 5TB mini-SAN through dual 4 GB HBAs. Now on to the Oracle installs!

I also got the replacement controller shield card for the Anet 3-d printer, but, before I install it I have to verify every single connector is set up correctly. There are three sensor cables, 5 motor control cables and 3 axis motion end stop cables that all need to be carefully checked for shorts in the Dupont connectors. Did I mention I hate Dupont connectors?

I also got and installed the green lasers in the 3-d scanner, but need the printer to make some better holders that allow x and y axis calibration of the lasers themselves. Otherwise you get cylinders inside of cylinders and other scans turnout really weird.

Monday, January 23, 2017

Upgrading CPUs and other topics

In addition to adding 16GB of memory by replacing the 16 GB with a 32 GB set in my Dell 2950's I will be installing 4 new E5460 3.16 GHz quad processors to replace the E5345 2.33 GHz processors to boost processing speed. I assume I can reuse the existing heat sinks and just swap out the CPUs. I should have the new CPUs by the 31st and should have the memory upgrades by then as well. I will try to post some pictures of the process when I do it. Once all this is done I should have some powerful Ubuntu servers running 12c Oracle RAC...if not, I will have a bunch of stuff to sell on Ebay!

I am also in the process of learning the ins and outs of 3D scanning and printing using a Ciclops scanner and the ANET A8 DIY 3D Printer. Of course things are not off to an auspicious start. The primitive mounts on the Ciclops for the lasers cause issues with focusing and calibrating the lasers, I hope to have that fixed with some new laser mounts once I get the Printer working. In addition I have ordered some replacement green lasers for the red ones it currently uses. The CMOS in the camera used it much more sensitive to Red and you have fewer scanner issues if you swap out red for green lasers according to the experts.

The ANET A8 DIY printer is whole nother story. I assembled it over the course of two days, then calibrated it, did the bed leveling, checked that the extruder and heated bed worked as they were supposed to and then, not even half-way through the first test print the Mosfet on the control board for the heated bed fried, frying the control board. I have ordered and obtained a RAMPS 1.4 upgrade control board and am now just waiting on the DuPont connectors and Dupont crimper I need to complete the upgrade, at my own cost of course. The reason at my cost is because GearBest, where I bought the printer has crappy support. I have also purchased an upgraded power supply. These are suggested upgrades from long time A8 users.

I contacted GearBest to get a new board since this was literally less than a week since I got the printer. They said I obviously did something wrong and it was my fault so they wouldn't replace it. They offered me a generous 200 points (about 4 USD) for my trouble. This is the second time their support has been shall we say less than stellar. The first time was with a G2 mini-computer I bought from them which was DOA, I immediately notified them of this, they marked the report as "processing". It has been a year since then, and I reminded them to which they said since it had been a year, they couldn't do anything! In short, don't expect good client service from them, they are just a clearing house for cheap Chinese electronics, toys and games.

Well, I will keep you posted on progress.

Saturday, January 21, 2017

Going to Ubuntu

Well I was sitting in my home office looking at my servers. I've done that a lot in the last couple of years. Wondering why I was having such difficulty installing Oracle Linux and getting the darn things to be more than room heaters. Admittedly it hasn't been a full time pursuit. Anyway I have decided to install Ubuntu since I could get installation dvds and didn't have to jump through download this, make boot disk that. I have also ordered 32 gig upgrades for both servers. Hopefully I will be able to install Oracle12c RAC and get my cluster up and running. I may also download meshlab and a slicer so I can create files for my 3D printer. Currently times to conver the vertices into faces is extreme on my laptop.

Anyway, will be posting my progress. The

Tuesday, September 06, 2016

Get What You Pay For

Believe it or not I have been accused of being a writer. I try to ignore this terrible slander. However I have been known to sneak into an occasional writers seminar or the occasional presentation at a Con event (such as LibertyCon, DragonCon or ChattaCon not some anonymous meeting of ex-criminals.) Now if it is a free event you pretty much get whatever they want to give you. However, if I have paid for the privilege of being lectured by Joe (or Joan) Author and they are supposed to provide specific services I like to get what I paid for.

To whit, critiques of works in progress. Usually seminars provide critiques of work in progress, work you did at the seminar or perhaps a pitch or proposal you created. I guess I have to agree with my wife (please don't revoke my man card, but after nearly 43 years of marriage I have found she is right, even when she isn't.) that I tend to do two things:

    1. Not stand up for myself
    2. Let other people walk all over me

Now I guess those two are closely related. I tend to believe I pick my battles, if it isn't going to make a difference in five years is it that important? Anyway I have found I tend to allow the other seminar attendants to go first. I like to think I am being tactical, figuring out who gives the best comments, to whom I should pay attention and who has spent too much time alone with their cats. Have you noticed most female writers seem to be inordinately fond of cats? What this results in is that I end up being critiqued near the end of the seminar.

Now, if all things where even and fair each attendee would get exactly the same amount of time. For the most part the seminar leaders do try to be fair. However many times they are up against hard stops or if there are guest speakers, the guest speaker's schedules. It seems no matter what I try, I end up at the end of the day or coming up against a secondary speaker. I even completely switched my seating around in one seminar, only to have the leader reverse the order.

So, from now on, in future seminars I will the first with my hand raised (or however they say to indicate preference) to volunteer to be foisted on my own petard (whatever the heck a petard is, and no it is not the latest Captain of the Enterprise, that was Picard.) So I hope by being more direct and forceful I can get my fair share of criticism. Hmmm....that sounds not quite right. Anyway it will also mean I get to respond to the criticism.

You see at the seminar I most recently attended they made several comments and questions about my work, but then when I was supposed to get to respond, the guest speaker showed up and I wasn't able to explain how I was correct and they were not (well, they were wrong on some of the facts they were sure of...) anyway I fell that they should make way for the paying clients not the free guests. Besides, the guest spent most of the time talking about her cats, if I want that I will peruse Facebook.