UPLC Link prüft Cardano Smart Contracts anhand des veröffentlichten Codes

Die Cexplorer Integration bringt die Quellverifizierung in die Vertragsansicht, während On chain Einträge die Details bewahren, die Entwickler und Auditoren benötigen, um die Überprüfung zu wiederholen.

By SongMarketCap

Updated:

Cardano News - UPLC Link prüft Cardano Smart Contracts anhand des veröffentlichten Codes

UPLC Link ermöglicht Cardano Nutzern zu prüfen, ob ein bereitgestellter Smart Contract dem dafür veröffentlichten Quellcode entspricht. Die Open Source Plattform baut Verträge neu und vergleicht ihre kryptografischen Fingerabdrücke. Über Cexplorer können Nutzer auf das Quellcode Repository und Build Informationen zugreifen, die mit einem untersuchten Skript verknüpft sind.

Cexplorer verbindet Cardano Skripte mit ihrem Quellcode

Die Option „Verify Source“ von Cexplorer verknüpft die Vertragsinspektion mit UPLC Link und bietet Zugriff auf das Quellcode Repository, die exakte Code Revision, die Compiler Version und die Vertragsparameter.

Giovanni Gargiulo, Senior Blockchain Architect bei der Cardano Foundation, demonstrierte den Ablauf während der Developers Office Hours am 25. September. Eine am 7. Oktober veröffentlichte Zusammenfassung dokumentierte die Integration und Pläne zur Erweiterung der Compiler Unterstützung.

Das Werkzeug schließt eine Lücke zwischen der Veröffentlichung von Code und der Identifizierung dessen, was on chain läuft. Ein Projekt kann seinen Quellcode veröffentlichen und ein Audit beauftragen, doch Nutzer benötigen weiterhin eine Möglichkeit festzustellen, dass der bereitgestellte Vertrag der geprüften Version entspricht.

Für Anwendungen, die ADA und andere Cardano Assets verwalten, verbindet dies die zur Einsicht verfügbaren Regeln mit den Skripten, die Swaps, Kredite oder gesperrte Mittel steuern. Die Quellverifizierung stellt diese Verbindung her, ein Sicherheitsaudit bewertet den Code auf Schwachstellen.

Erneutes Bauen von Verträgen erzeugt eine überprüfbare Übereinstimmung

Cardano Smart Contracts werden als kompiliertes Untyped Plutus Core oder UPLC ausgeführt. Ihre Skripthashes identifizieren die kompilierten Programme, ohne offenzulegen, welche Quell Revision oder Build Einstellungen sie erzeugt haben.

UPLC Link beginnt mit einem bestimmten GitHub Commit und einer Compiler Version. Die Plattform baut den Quellcode, berechnet die resultierenden Skripthashes und vergleicht sie mit den erwarteten On chain Kennungen.

Die Plattform verarbeitet auch parametrisierte Verträge, deren endgültige Form von Werten abhängt, die während der Einrichtung angegeben werden. Entwickler können diese Werte über die Oberfläche eingeben, einschließlich Verweisen auf andere Skripte, und das Ergebnis neu berechnen.

Für eine Übereinstimmung sind der korrekte Quellcode, Compiler und die richtigen Parameter erforderlich.

Die öffentliche Oberfläche ist derzeit als Alpha gekennzeichnet und unterstützt Aiken Verträge. Die Präsentation beschrieb Arbeiten in Richtung Unterstützung für Scalus, Plutarch und plu-ts sowie eine geplante Anbindung an Blaster für die automatisierte formale Verifikation von Vertragseigenschaften.

Diese Erweiterungen würden die Abdeckung der Plattform über den aktuellen Aiken Workflow hinaus ausweiten.

On chain Aufzeichnungen unterstützen die unabhängige Verifizierung

CIP-0171 schlägt ein gemeinsames Metadatenformat vor, um die Informationen zu erfassen, die für die Reproduktion eines Cardano Vertragsbuilds benötigt werden. Es verwendet das Transaktions Metadatenlabel 1984, um das Quellcode Repository, die Code Revision, den Compiler, die Build Umgebung und die Parameter zu kennzeichnen.

Der Quellcode verbleibt in seinem Repository, während die Blockchain die Build Anweisungen bewahrt. Auditoren und Forscher können Einträge unabhängig vom ursprünglichen Deployer veröffentlichen und sie anschließend testen, indem sie den referenzierten Code erneut bauen und den resultierenden Hash prüfen.

Die Spezifikation bleibt ein Vorschlag im offiziellen CIP Register. Ihr Format berücksichtigt mehrere Compiler Familien, wobei jedes Verifizierungstool festlegt, welche es unterstützt.

UPLC Link bietet bereits eine Registrierung über eine signierte Cardano Transaktion an, wobei die Netzgebühr in ADA bezahlt wird. Sein Backend indexiert eingereichte Einträge für die Auffindbarkeit über das öffentliche Register. Das Projekt stellt zudem eine API für andere Dienste bereit und veröffentlicht Anleitungen zum lokalen Betrieb der Plattform.

Bei einem registrierten Vertrag können Prüfer von seiner Adresse oder dem Skripthash ausgehen, die aufgezeichneten Build Details abrufen und die Quellverbindung selbst überprüfen. Anwendungsteams können diesen reproduzierbaren Nachweis zusammen mit ihrem Code und ihren Auditberichten bereitstellen.