Category Archives: Uncategorized

Bootstrapping a VDR-based Fully Decentralized Object (FDO)/Credential Platform: VON Example

Michael Herman (Trusted Digital Web) 8:35 PM
What are the common/known strategies for bootstrapping a VDR-based decentralized credential/object platform? …asked naively on purpose.

  • Strategies for placing the first/initial DIDs in the VDR?
  •  …presumably purposed to be the initial Issuer(s) of verifiable identifiers on the platform?

Best regards,
Michael Herman
Far Left Self-Sovereignist

Stephen Curran 5:37 PM
In Hyperledger Indy, which is a permissioned public network, the first transactions are a DID for one of the  “SuperUser’s (aka “Trustee”) of the network, and DIDs for the initial node operators that verify the transactions.  From there, DIDs for additional nodes are added, DIDs for other Trustees and then DIDs of other types of users (Endorsers, authors), who in turn create other DIDs and object types. 
If you look at von-network (https://github.com/bcgov/von-network) you can spin up a little network (4 nodes in docker) and see the transactions that are used to start the network. In that, the seed for the Trustee DID is well known, so once you’ve started the von-network, you can control it. In a “real” network, that seed (and associated private key) would of course be protected by that first Trustee.
For Sovrin, a ceremony was video’d of all the initial Trustees and Stewards (node operators) when MainNet was started in 2017.

VON Blockchain Explorer

Reference: http://greenlight.bcovrin.vonx.io/browse/domain

Reference: http://greenlight.bcovrin.vonx.io/browse/pool

Initial DID Transactions

Initial Node Transactions

First SCHEMA Transaction

Leave a comment

Filed under Uncategorized

Trusted Digital Web: 8-Layer Architecture Reference Model (TDW-ARM)

Github: https://github.com/mwherman2000/TrustedDigitalWeb

After about 2.5 years, I finally have an ARM that I like and a code base that is starting to show some promise…

8-Layer Architecture Reference Model (TDW-ARM)

Click the model to enlarge it.

Trusted Digital Assistant (TDA) Prototype

Github: https://github.com/mwherman2000/TrustedDigitalWeb

Microsoft “Trinity” Graph Engine

Web site: https://www.graphengine.io/

Github: https://github.com/microsoft/GraphEngine

Verifiable Credential Notarization: User Scenarios 0.25

Verifiable Notarization Protocol (VCNP) 0.25

TDW Agents, Wallets, and VDR: ARM

Leave a comment

June 28, 2021 · 7:54 am

The Verifiable Economy: Fully Decentralized Object (FDO) Example: Bob’s UDID Document

Strongly-typed Code to Generate Bob’s UDID Document

Bob’s UDID Document

{
    "CellId": 6601258412767401213,
    "CredentialCore": {
        "udid": "did:svrn:credential:FD54/8F2B/8D61/9C5B",
        "context": [
            "https://www.sovrona.com/ns/svrn/v1"
        ],
        "claims": [
            {
                "key": "authentication",
                "attribute": [
                    {
                        "key": "publicKey",
                        "value": "1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ"
                    },
                    {
                        "key": "id",
                        "value": "#pubkey1"
                    },
                    {
                        "key": "type",
                        "value": "AUTHN-KEY"
                    }
                ]
            },
            {
                "key": "service",
                "attribute": [
                    {
                        "key": "serviceEndPoint",
                        "value": "http://localhost:5304/"
                    },
                    {
                        "key": "id",
                        "value": "#sep1"
                    },
                    {
                        "key": "type",
                        "value": "SEP-TCS"
                    }
                ]
            },
            {
                "key": "testkey1",
                "value": "testvalue1"
            },
            {
                "key": "testkey2",
                "attributes": [
                    [
                        {
                            "key": "publicKey",
                            "value": "1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ"
                        },
                        {
                            "key": "id",
                            "value": "#pubkey1"
                        },
                        {
                            "key": "type",
                            "value": "AUTHN-KEY"
                        }
                    ],
                    [
                        {
                            "key": "publicKey",
                            "value": "1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ"
                        },
                        {
                            "key": "id",
                            "value": "#pubkey2"
                        },
                        {
                            "key": "type",
                            "value": "AUTHN-KEY"
                        }
                    ]
                ]
            }
        ]
    },
    "Envelope": {
        "kind": "UDIDDocument",
        "encryptionFlag": "NotEncrypted",
        "hashedThumbprint64": "MpUTVq+AYTMEucWUFfMWfsWJRQ6tmO6FGzjAJGMN4T0=",
        "signedHashSignature64": "CLFgZCLJPzozxwB+JjJr7xQdZxgcwbEX4XBsujD+1rCW0sd6T4JFMVFTb86H50HQZ6h7myUld+9pIlbNWS3IPIg11uwYjlzMe32AO+ETCMSEJQJAPN9IJB//C4J2SkAdkK9OszStVsA/GYYtKZQdYSTdDESQCDVw6292N92bIJY=",
        "comments": [
            "Bob's UDID Document",
            "It works!",
            "Created by TDW.TCSServer at 2021-06-15 07:07:09Z"
        ]
    }
}

Leave a comment

Filed under Uncategorized

Hydroponic Pods

Leave a comment

June 2, 2021 · 11:26 pm

NETAGO Downtime – May 20-21, 2021

  • Hardwired ThinkPad laptop
    • Edition: Windows 10 Pro
    • Version: 20H2
    • OS build: 19042.928
    • 716 failures
    • 75.67% downtime

  • WiFi Wireless Lenovo laptop
    • Edition: Windows 10 Pro
    • Version: 20H2
    • OS build: 19042.985
    • 753 failures
    • 6.86% downtime

Leave a comment

Filed under Uncategorized

NETAGO Downtime – 2021-05-15 & 16

  • Hardwired ThinkPad laptop: 81.01% downtime (same laptop used for prior NUM reports)
  • WiFi Wireless Lenovo laptop: 3.78% downtime

Leave a comment

Filed under Uncategorized

NETAGO Downtime – 2021-05-14 AM

  • Hardwired ThinkPad laptop: 77.96% downtime (same laptop used for prior NUM reports)
  • WiFi Wireless Lenovo laptop: 2.99% downtime

Leave a comment

Filed under Uncategorized

NETAGO Downtime – 2021-05-13 AM – 88.81%

Over the last approximately 7.5 hours, the NETAGO internet service in Bindloss, Alberta was down 88.81% of the time according to the Net Uptime Monitor (NUM) app. This is not acceptable.

Net Uptime Monitor Failure Log (NetUptimeMonitor.com)
Licensed to Michael Herman

=======================================

2021-05-12 10:19:45 PM Log Start

Failure Start Length
2021-05-12 10:20:33 PM 0:00:05
2021-05-12 10:20:52 PM 0:03:23
2021-05-12 10:24:47 PM 0:01:32
2021-05-12 10:26:54 PM 0:04:16
2021-05-12 10:31:32 PM 0:07:08
2021-05-12 10:38:48 PM 0:01:30
2021-05-12 10:40:26 PM 0:10:28
2021-05-12 10:51:22 PM 0:03:33
2021-05-12 10:55:03 PM 0:06:38
2021-05-12 11:01:50 PM 0:13:03
2021-05-12 11:16:13 PM 0:09:05
2021-05-12 11:26:56 PM 0:10:07
2021-05-12 11:37:12 PM 0:04:32
2021-05-12 11:44:15 PM 0:12:41
2021-05-12 11:58:03 PM 0:03:08
2021-05-13 12:05:52 AM 0:04:00
2021-05-13 12:10:00 AM 0:09:12
2021-05-13 12:19:20 AM 0:03:58
2021-05-13 12:23:26 AM 0:06:59
2021-05-13 12:32:56 AM 0:13:24
2021-05-13 12:47:53 AM 0:12:56
2021-05-13 1:00:57 AM 0:01:34
2021-05-13 1:03:24 AM 0:01:54
2021-05-13 1:07:04 AM 0:21:49
2021-05-13 1:29:07 AM 0:00:23
2021-05-13 1:29:39 AM 0:02:10
2021-05-13 1:31:57 AM 0:01:56
2021-05-13 1:34:01 AM 0:01:06
2021-05-13 1:35:15 AM 0:00:30
2021-05-13 1:36:19 AM 0:05:39
2021-05-13 1:42:07 AM 0:00:36
2021-05-13 1:42:51 AM 0:12:26
2021-05-13 1:56:36 AM 0:04:57
2021-05-13 2:01:41 AM 0:11:08
2021-05-13 2:12:58 AM 0:04:35
2021-05-13 2:20:10 AM 0:21:12
2021-05-13 2:41:44 AM 0:06:45
2021-05-13 2:48:44 AM 0:06:04
2021-05-13 2:57:25 AM 0:05:49
2021-05-13 3:04:02 AM 0:00:33
2021-05-13 3:04:56 AM 0:00:05
2021-05-13 3:05:23 AM 0:04:44
2021-05-13 3:10:22 AM 0:07:22
2021-05-13 3:17:52 AM 0:07:44
2021-05-13 3:27:15 AM 0:18:57
2021-05-13 3:46:20 AM 0:09:16
2021-05-13 3:58:39 AM 0:00:51
2021-05-13 4:01:55 AM 0:06:26
2021-05-13 4:08:42 AM 0:19:29
2021-05-13 4:28:20 AM 0:10:05
2021-05-13 4:40:36 AM 0:11:36
2021-05-13 4:52:21 AM 0:02:01
2021-05-13 4:54:36 AM 0:03:54
2021-05-13 4:58:39 AM 0:03:10
2021-05-13 5:01:57 AM 0:07:02
2021-05-13 5:09:33 AM 0:07:25
2021-05-13 5:17:19 AM 0:02:02
2021-05-13 5:19:36 AM 0:00:33
2021-05-13 5:20:17 AM 0:01:09
2021-05-13 5:23:24 AM 0:01:32
2021-05-13 5:25:05 AM 0:03:57
2021-05-13 5:29:23 AM 0:01:28
2021-05-13 5:30:59 AM 0:10:35
2021-05-13 5:42:40 AM 0:01:57
2021-05-13 5:46:10 AM 0:00:51
2021-05-13 5:47:09 AM 0:00:13

2021-05-13 5:48:22 AM 0:08:06

2021-05-13 5:56:36 AM Log End


Monitor Duration 7:36:50
Failure Summary:
Count 67
Total Downtime 6:45:44
% Downtime 88.81
Minimum Length 0:00:05
Maximum Length 0:21:49
Average Length 0:06:03

Leave a comment

Filed under Uncategorized

NETAGO Downtime – 2021-05-12 Early Morning – 93.6%

Net Uptime Monitor Failure Log (NetUptimeMonitor.com)
Licensed to Michael Herman

=======================================

2021-05-12 3:24:40 AM Log Start

Failure Start Length
2021-05-12 3:26:48 AM 0:00:05
2021-05-12 3:27:08 AM 0:00:16
2021-05-12 3:28:06 AM 0:06:22
2021-05-12 3:34:36 AM 0:01:04
2021-05-12 3:35:48 AM 0:05:23
2021-05-12 3:43:30 AM 0:27:34
2021-05-12 4:11:13 AM 0:00:29
2021-05-12 4:11:56 AM 0:02:18
2021-05-12 4:14:55 AM 0:02:05
2021-05-12 4:17:09 AM 0:05:56
2021-05-12 4:23:13 AM 0:56:42
2021-05-12 5:20:23 AM 0:00:23
2021-05-12 5:21:46 AM 0:00:33
2021-05-12 5:22:27 AM 0:07:16
2021-05-12 5:29:51 AM 0:04:38
2021-05-12 5:34:38 AM 0:17:12
2021-05-12 5:51:58 AM 0:07:41
2021-05-12 5:59:54 AM 0:00:15
2021-05-12 6:02:15 AM 0:00:27
2021-05-12 6:02:50 AM 0:04:07
2021-05-12 6:07:37 AM 0:21:43

2021-05-12 6:29:28 AM 0:07:42

2021-05-12 6:37:22 AM Log End


Monitor Duration 3:12:41
Failure Summary:
Count 22
Total Downtime 3:00:21
% Downtime 93.60
Minimum Length 0:00:05
Maximum Length 0:56:42

Average Length 0:08:11

Leave a comment

Filed under Uncategorized

Net Uptime Monitor (NUM)

The Net Uptime Monitor


What it does…


Is your internet connection unreliable? You’ve probably called your internet provider’s support line and maybe they were able to help you, maybe they even sent out a tech to look at it. But all too often the response is “Well, it’s working fine now!”


The Net Uptime Monitor alerts you to failures in your internet connection and documents the exact time and length of those failures. This failure log will help your provider troubleshoot the problem – after it helps you convince them it’s not your imagination! Net Uptime Monitor is designed to be as simple as possible and accomplish this one purpose accurately and thoroughly with the least effort from you.


How it works…


Net Uptime Monitor (NUM) uses the “Ping” command to test the response from three public servers operated by Google, Level 3, and OpenDNS. (See “What’s a Ping?” below for an explanation.) Each server is pinged in turn at an interval that you can set – normally five seconds. By default, NUM waits 200 milliseconds (2/10 of a second) for the server to respond – at least 3 times as long as a typical broadband internet connection should take.


NUM pings one server at a time; if the server responds, NUM waits the test interval, then pings the next server. If the server doesn’t respond, NUM immediately tries the next server, then the next. If any of the servers respond, then your connection must be working. Only when all three servers fail to respond does NUM determine that your connection is down.


By using three servers, NUM ensures that the problem isn’t just with the server or with some connection on the way to that server, or that the server isn’t momentarily slow or congested.


NUM can detect failures as short as a couple of seconds in length, but you can decide how long a failure must be before it really counts. A very short failure of a second or so is not likely to affect your use of the net and isn’t of any real concern. You can set how long a failure must be before NUM alerts you to it and records the failure in its failure log.


Connection is up, no previous failures…

Connection is down, one previous failure…

The display shows the names and IP addresses of each server. The indicator “light” flashes yellow when the ping is sent and shows green for a successful response. The response time of the last ping is shown. When the response time exceeds the time set for “Wait for Ping Response”, the indicator turns red to show no response from that server.


If your connection fails, the current fail length is displayed in red. When the length of the failure exceeds your setting for “Log Failure If Longer Than”, NUM plays an alert sound and writes the failure information into its log.


The display also shows the monitored time (how long the monitor has been running), the time since the last logged failure (up time), the start time and length of the last logged failure, and the total count of logged failures since NUM was started. The current settings for the test interval and the minimum failure length to be logged are shown at the bottom of the display.


Click the minimize button on the NUM window to hide the display. NUM disappears into your system tray in the “notifications area”. The NUM icon is shown in the notification – you can hover over the icon to see the current time since the last failure (“Up Time”) or click the icon to restore the display. In the Settings, you can choose to have a “failure alert” sound play, and/or have the NUM window “pop up”, if a connection failure longer than your minimum setting occurs.


The Log


NUM keeps a log of results in a text file. You can view the current log at any time by clicking the “View Log” button. The log is displayed in a separate window. NUM will continue to update the log even while you are viewing it.
Because the log is a plain text file, you can open it outside of the NUM program. It will open in Notepad or your default text editor, so you can easily edit or print the log.


The log records the start and end time of the monitoring and each failure start time and length. A summary shows the total monitoring time, failure count, total down time, percentage of down time, and the minimum, maximum, and average failure lengths. Here’s an example:

Net Uptime Monitor Failure Log (NetUptimeMonitor.com)
Licensed to Example User

=======================================

8/17/2015 8:44:28 AM Log Start

Failure Start Length
8/17/2015 1:44:25 PM 0:00:44
8/17/2015 1:49:53 PM 0:00:36

8/17/2015 1:52:39 PM 0:01:59

8/18/2015 12:13:17 AM Log End
Monitor Duration 15:28:46
Failure Summary:
Count 3
Total Downtime 0:03:20
% Downtime 0.36
Minimum Length 0:00:36
Maximum Length 0:01:59

Average Length 0:01:06

The example shows date and time in US English format; your log will use the format for your region.
The log files are saved in a folder of your choice; the default is your Documents folder. You can choose a different folder in the Settings.


Also in the Settings, there are two options for the log file:
1) New File Each Run
A new file is created each time NUM starts. Each log file is named with the date and time NUM was started so that they will appear in your directory in chronological order. The file name is in the form of “NetUptime 20110805 134243.txt”. In this example, the date is August 10, 2015 – 20150810 – and the time is 1:42:43 PM – 134243.
2) Add to Existing File
Each new log is added to the same single file. The file name is always NetUptime.txt. As long as that file exists in the folder where you have chosen to save the log file, NUM will keep adding to it. If the file doesn’t exist, i.e. it’s been deleted, moved, or renamed, NUM will start a new file.


The Settings

Click the “Change Settings” button on the NUM display to open the Settings window. There are several settings available:


Startup Settings…


· Start when Windows Starts? – Check the box and NUM will automatically start when your computer starts. Uncheck the box and you can start NUM when you want by clicking its desktop icon. The default on installation is checked – NUM starts automatically.
· Start Minimized in Tray? – Check the box and NUM will be minimized in the system tray automatically when it starts. The default on installation is unchecked – NUM starts with the main form displayed.
Test Settings…
· Test Interval – how many seconds between ping tests when the servers are responding. Five seconds is the default. It is possible that NUM will miss a failure that is shorter than the time between tests, so if your connection has very frequent failures of just a few seconds you might choose a shorter test interval. If you don’t have many failures, you may want to test less often. Most connection problems result in less frequent but longer failures, so five seconds is a good choice for most users.
· Wait for Ping Response – the length of time NUM waits for a response after sending a ping. The default setting of 200 milliseconds is recommended for normal situations. If you have a slower internet connection, such as a dialup or mobile connection, or are in a remote area where response is typically slow, you can set the wait time for up to 1500 milliseconds (1.5 seconds). To help you find the best setting for your situation, set the wait time to 1500 milliseconds and observe the ping response times NUM displays when your connection is working normally. Set the wait time to about 1.5 times the typical ping response times you see for efficient detection of outages.
· Change Target Servers – click to open the Target Servers window.

You can edit the IP Address and Name of any of the three servers. Click the Test button to try that server, verifying that it responds and checking the response time.


The default target servers (Google, Level 3, OpenDNS) were selected for their performance and very high reliability. You should only use a different server if you find that one of these servers does not respond reliably in your particular situation. Click “Restore Defaults” to reset the Target Servers to their original values. Changes to the Target Servers take effect the next time the program starts.


Alert and Log Settings…


· Pop Up on Failure? – Check the box and the NUM form will pop up from the system tray when there is a failure. Uncheck the box and NUM will continue to log and alert but it will stay minimized during a failure. The default on installation is checked – if NUM is minimized to the system tray, the main NUM form will be displayed when a failure is logged.
· Alert and Log Failure If Longer Than – the minimum failure length that will be counted, both for the log and the alert of a failure. Five seconds is the default setting.
· Log File Location – the folder where the logs will be stored. Click the “Select Folder” button to browse to the folder you want. The log for the current run of NUM is already started, so a change in this setting will not take effect until the next time you run NUM.
· Log File Option – New File Each Run (the default) or Add to Existing File. See previous section “The Log” for a more detailed explanation.
· Choose Failure Alert Sound – choose the sound NUM makes when a failure is counted. The sound plays when you choose its button so you can preview each one. Choose “None” to silence the alert. Choose “Custom” and click the Select File button to use any .WAV sound file on your system. The default on installation is the “Short” sound.
· Play Reconnect Sound – NUM can play a sound when your internet reconnects after a failure. Choose “None” to silence the reconnect sound. Choose “Custom” and click the Select File button to use any .WAV sound file on your system.


Combine Settings for “Invisible” Operation


NUM can do its job without showing itself or alerting the user to its operation in any way. Choose these settings:
· Start when Windows Starts? – checked.
· Start Minimized in Tray? – checked.
· Pop Up On Failure – unchecked.
· Choose Failure Alert Sound – None.
· Choose Reconnect Sound – None.
With this combination of settings, the user need never be aware of NUM. This is useful in a support situation where you are installing NUM on a computer you aren’t personally using.


What’s a Ping?


“Ping” is a command available on all kinds of computers that tests whether another computer on the network will respond to your computer. It’s named after the sound of submarine sonar systems – they send out a “ping” sound which bounces off their target and they listen for that echo, locating their target. The internet “ping” works in a similar way. You name your target, an internet server, and “ping” it. The ping command and response looks like this (in a DOS command window):


C:\ ping google.com

Pinging google.com [74.125.224.84] with 32 bytes of data:
Reply from 74.125.224.84: bytes=32 time=30ms TTL=54
Reply from 74.125.224.84: bytes=32 time=31ms TTL=54
Reply from 74.125.224.84: bytes=32 time=31ms TTL=54
Reply from 74.125.224.84: bytes=32 time=31ms TTL=54

Ping statistics for 74.125.224.84:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 30ms, Maximum = 31ms, Average = 30ms

A ping command actually generates four requests and the server replies four times. Each response is timed in thousandths of a second (ms = milliseconds). Here we see that the server at google.com responded in about 31/1000 or 3/100 of a second. The internet is fast! – when everything’s working.


Licensing


A license for Net Uptime Monitor removes the time limits from the trial version and lets you use the full program on one computer. To purchase a license or register your license, just click “Trial Version – Click to Register or Purchase License” at the bottom of the NUM main form. If you have your license, enter the License Key code you’ve received and click Register. If you need a license, click Purchase a License to visit our web site and make your purchase.
If you have already registered your copy of NUM, your name and email are shown on the main form. Click the License Info button to see your license key.


Moving to a New Computer or Installing a New Operating System


You must unregister your license before you replace your computer or install a new version of Windows. This will make your license key available again to use on your new system. Just click License Info, click Print This Form to make sure you’ll have the license key, then click Unregister License. The program will go back to Trial mode. You can then reuse your license key to register NUM on any computer.

Leave a comment

Filed under Uncategorized