Re: [Dlt-networking] updated draft-mcbride-rtgwg-bgp-blockchain

Dirk Trossen <dirk.trossen@huawei.com> Wed, 16 November 2022 13:08 UTC

Return-Path: <dirk.trossen@huawei.com>
X-Original-To: dlt-networking@ietfa.amsl.com
Delivered-To: dlt-networking@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EB98EC14CF14 for <dlt-networking@ietfa.amsl.com>; Wed, 16 Nov 2022 05:08:57 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.896
X-Spam-Level:
X-Spam-Status: No, score=-6.896 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ulv3QrEkj6Ep for <dlt-networking@ietfa.amsl.com>; Wed, 16 Nov 2022 05:08:53 -0800 (PST)
Received: from frasgout.his.huawei.com (frasgout.his.huawei.com [185.176.79.56]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4CC7AC14CF11 for <dlt-networking@ietf.org>; Wed, 16 Nov 2022 05:08:53 -0800 (PST)
Received: from fraeml736-chm.china.huawei.com (unknown [172.18.147.206]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4NC3CZ0njnz67N4y; Wed, 16 Nov 2022 21:04:10 +0800 (CST)
Received: from lhrpeml500006.china.huawei.com (7.191.161.198) by fraeml736-chm.china.huawei.com (10.206.15.217) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Wed, 16 Nov 2022 14:08:49 +0100
Received: from lhrpeml500003.china.huawei.com (7.191.162.67) by lhrpeml500006.china.huawei.com (7.191.161.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Wed, 16 Nov 2022 13:08:49 +0000
Received: from lhrpeml500003.china.huawei.com ([7.191.162.67]) by lhrpeml500003.china.huawei.com ([7.191.162.67]) with mapi id 15.01.2375.031; Wed, 16 Nov 2022 13:08:49 +0000
From: Dirk Trossen <dirk.trossen@huawei.com>
To: Thomas Martin <T.Martin@mmu.ac.uk>, Michael McBride <michael.mcbride@futurewei.com>, "dlt-networking@ietf.org" <dlt-networking@ietf.org>
Thread-Topic: updated draft-mcbride-rtgwg-bgp-blockchain
Thread-Index: AdiNizfOC7i/Q97wSFOEKWD/+VkxcxsJHYSVAALTD3A=
Date: Wed, 16 Nov 2022 13:08:49 +0000
Message-ID: <a8b21371b835403fbca314b27c6d8de4@huawei.com>
References: <BYAPR13MB2582A778C609AE79B203B972F4BD9@BYAPR13MB2582.namprd13.prod.outlook.com> <DB9PR01MB9566BE9C585622CAE4D6AAB5C4079@DB9PR01MB9566.eurprd01.prod.exchangelabs.com>
In-Reply-To: <DB9PR01MB9566BE9C585622CAE4D6AAB5C4079@DB9PR01MB9566.eurprd01.prod.exchangelabs.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.48.131.22]
Content-Type: multipart/alternative; boundary="_000_a8b21371b835403fbca314b27c6d8de4huaweicom_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/dlt-networking/osr4fyMzuotJuHtddb-fIIWvuRw>
Subject: Re: [Dlt-networking] updated draft-mcbride-rtgwg-bgp-blockchain
X-BeenThere: dlt-networking@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: DLT Networking <dlt-networking.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dlt-networking>, <mailto:dlt-networking-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dlt-networking/>
List-Post: <mailto:dlt-networking@ietf.org>
List-Help: <mailto:dlt-networking-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dlt-networking>, <mailto:dlt-networking-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 16 Nov 2022 13:08:58 -0000

Hi Thomas,

Many thanks for the feedback and comments. Good to see the discussion; I will leave it to Mike to decide whether we should reflect this discussion also on the RTG WG list (where the draft was presented). For now, I am quite fine here.

Best,

Dirk

From: Dlt-networking <dlt-networking-bounces@ietf.org> On Behalf Of Thomas Martin
Sent: 16 November 2022 12:40
To: Michael McBride <michael.mcbride@futurewei.com>; dlt-networking@ietf.org
Subject: Re: [Dlt-networking] updated draft-mcbride-rtgwg-bgp-blockchain

Hello,

I've read the draft and I have some comments (first time posting to a IETF mailing list, apologies if there's etiquette I'm not aware of). The proposal seems to be written with a view of putting BGP data in the blockchain and using smart contracts to control how the data is managed. This is creating a single source of truth, something that blockchains are particularly well suited for. However, reading some of the draft indicates to me that there is potential that has not been identified:

"In terms of trust assumptions, a DCS for BGP may require authentication to prevent fraudulent DCS transactions, such as fraudulent BGP announcements being made. For this, the existing RPKI system could be used to authorize any client before sending suitable smart contract transactions into the DCS."

"Furthermore, the DCS could be permissisoned, thereby restricting the nodes holding as well as accessing information to trusted members of the community."

Both of these quotes indicates that authentication/authorisation would need to be added-on to the DCS. Blockchains have inherent authentication through the use of public-private keys. Any action that changes the state of the blockchain ledger requires a signature, which authenticates the entity (only someone with the private key could have created the signature). If you need some method of relating a blockchain address to a real-world entity, then that is something that would need to be added-on. But any blockchain solution should take advantage of the inherent authentication provided by the use of public keys.
[DOT] Your reference to the pub/priv keys used is, in fact, similar to the use of the RPKI system for achieving the same objective. The BGP community is quite familiar with its objective and purpose, hence the mentioning on it rather than the pub/priv keys usually used in BC.

[DOT] When it comes to the permissioned aspect, it more relates to your issue below, I think.
The other implicit message I read from the above quotes (and the rest of the draft) was the idea of a group of authorised users. That there is some set of users who can make changes to the BGP data on the blockchain, and everyone else is prevented from changing anything/can only read the data. To me, this is not implementing the principle of least privilege.
[DOT] I am not entirely sure that this is the message that was intended here and I would argue that the possibly commissioned nature is not about that either (if anything, it is restricting the set of users per se, period, not just for write access).
If the smart contract is only checking membership in the authorised set, then the users would have the capability to perform many actions beyond what they should. Accidental errors (or compromised accounts) could lead to harm. A secure blockchain system will place as much of the logic controlling/restricting access in the code of the smart contract itself as possible as this is the least corruptible part of the system.
[DOT] I agree with that, if that was indeed the intended objective but see my last comment.

To apply this to BGP, it could be possible to use another thing that blockchains do very well: namely assigning individual owners to resources. NFTs gets a lot of deserved ridicule for the associated hype and unethical behaviour, but the technology allows a verifiable single source of ownership to be determined. This is something that a PKI cannot do. It is possible to have multiple conflicting chains of certificates signed (e.g., through error or attack). To me, the natural application of blockchains to BGP would be to consider prefixes as tokens assigned to AS blockchain addresses. The unique owner of any prefix could be determined with high confidence. This, plus the signing of peering relationships by the relevant ASes, could solve a lot of the problems with fraudulent announcements. If the smart contract is written correctly (big if, obviously), then it would be impossible for any entity to announce a route they were not authorised to.
[DOT] I think this is an excellent point and worthwhile capturing in the draft, i.e., using BC to assert ownership of a resource (like a prefix). If we positioned this (rightly) as the key issue for BGP operations, all else may just be 'bootstrapped' from it.

There are a lot of unanswered questions about how practical and scalable any of the above is.
[DOT] You may (or may not) have noticed a second draft in the IETF on "impact of DLTs on provider networks", now superseded by a more detailed publication and originating from some work done in the IIC (Industrial Internet Consortium) with a whitepaper released in Jan 2022. This work is looking at DCS (example there is Ethereum) and what it 'does' to a network, largely driven by the need for capability-based communication to realise the randomized diffusion broadcast/multicast that underlies the DLT operation. From a network perspective, it is quite painful but raises also interesting questions on how networks could improve on it or provide support (through network-level innovations).

It is an area of research I've put some thought into, but not yet had much of a chance to do any serious work on it. If any of the above may be applicable to the aim of this group, please let me know.
[DOT] It sure sounds like it and it would be good to get these thoughts into a revision of the draft and further discussed. We are still looking into the constituency within the IETF to have this conversation but it may well be this group, which will hopefully grow.

Kind Regards,

Thomas.



Dr Thomas Martin (he/him) | Senior Lecturer | Department of Computing and Mathematics | t.martin@mmu.ac.uk<mailto:t.martin@mmu.ac.uk>

0161 247 1501 | Room JD E120
Manchester Metropolitan University | John Dalton Building | Manchester | M1 5GD
Office Hours: Monday 3:00 - 4:30 pm and Wednesday 11:30 - 1:00 pm
Please note that I am on a flexible working schedule and will only be reading/answering MMU email on Monday/Tuesday/Wednesday
________________________________
From: Dlt-networking <dlt-networking-bounces@ietf.org<mailto:dlt-networking-bounces@ietf.org>> on behalf of Michael McBride <michael.mcbride@futurewei.com<mailto:michael.mcbride@futurewei.com>>
Sent: 01 July 2022 9:46 PM
To: dlt-networking@ietf.org<mailto:dlt-networking@ietf.org> <dlt-networking@ietf.org<mailto:dlt-networking@ietf.org>>
Subject: [Dlt-networking] updated draft-mcbride-rtgwg-bgp-blockchain

This email originated from outside of Manchester Met. Do not click links or open attachments unless you recognise the sender and believe the content to be safe. Please contact the IT Helpline if you have any concerns, https://www.mmu.ac.uk/isds/contact
________________________________

Hello,



A couple of new authors joined in and we've updated https://www.ietf.org/archive/id/draft-mcbride-rtgwg-bgp-blockchain-01.txt with a fair amount of new information including the use of smart contracts. Please give it a read and comment if you feel it's on the right track or not. We have time to update the draft again before the deadline. We will likely discuss this at the upcoming IETF 114 meeting in rtgwg if there is time. Hope to see many of you in Philly.



Thanks,

mike
"Before acting on this email or opening any attachments you should read the Manchester Metropolitan University email disclaimer available on its website http://www.mmu.ac.uk/emaildisclaimer "