Druga wersja zapoznawcza MultiChain 2.0

Węzeł źródłowy: 1849219

Uprawnienia dla poszczególnych zasobów, zwiększanie pojemności i wbudowane metadane

Dzisiaj mamy przyjemność zaprezentować drugą wersję demonstracyjną MultiChain 2.0. Dzięki temu osiągnięto znaczący postęp w zakresie Mapa drogowa MultiChain 2.0i zawiera ważną dodatkową funkcję związaną z uprawnieniami do zasobów.

Uprawnienia dla poszczególnych zasobów

Zacznijmy od niespodzianki. W tej wersji dodano możliwość osobnego kontrolowania uprawnień do wysyłania i odbierania dla każdego zasobu wydanego w łańcuchu bloków. Ta kontrola jest ważna w środowiskach, w których każdy zasób ma różne cechy pod względem przepisów, wymagań dotyczących identyfikacji użytkownika i tak dalej.

W momencie wydawania nowego zasobu można go opcjonalnie określić jako ograniczony do odbioru i / lub wysyłania. Zasoby z ograniczonym dostępem mogą pojawiać się tylko w wynikach transakcji, których adres ma receive uprawnienia do tego zasobu. Podobnie, zasoby z ograniczonym wysyłaniem mogą być wydawane tylko na dane wejściowe transakcji przez adresy, które mają przypisane do zasobu send uprawnienia. (Należy pamiętać, że we wszystkich przypadkach adresy wymagają globalnego send i receive uprawnienia do pojawienia się odpowiednio w danych wejściowych i wyjściowych).

Połączenia send i receive uprawnienia do zasobu można nadawać lub cofać za pośrednictwem dowolnego adresu, który ma admin or activate uprawnienia do tego zasobu. Domyślnie te uprawnienia są przypisane tylko do wystawcy aktywów, ale emitent (lub każdy później dodany administrator aktywów) może je również rozszerzyć na inne adresy.

Aktualizacje parametrów Blockchain

Jedną z głównych funkcji opracowywanych dla MultiChain 2.0 jest aktualizacja łańcucha bloków, aby umożliwić wielu platformom parametry łańcucha do zmiany w czasie. Jest to niezbędne, ponieważ łańcuchy bloków są zaprojektowane do długotrwałego działania i trudno przewidzieć, jak systemy komputerowe będą używane wiele lat po ich utworzeniu.

MultiChain 1.0.x zapewnia już możliwość aktualizacji pojedynczego parametru - wersji protokołu łańcucha. Ta wersja MultiChain 2.0 robi znaczący krok naprzód, umożliwiając zmianę siedmiu dodatkowych parametrów związanych z wydajnością i skalowaniem łańcucha bloków. Obejmują one docelowy czas blokowania, maksymalny rozmiar bloku, maksymalny rozmiar transakcji i maksymalny rozmiar metadanych.

Podobnie jak w przypadku innych kluczowych operacji związanych z zarządzaniem, aktualizację parametrów łańcucha może wykonać tylko administrator (-y) łańcucha, z zastrzeżeniem dostosowywalnego poziomu konsensusu. Nadal pracujemy nad tą funkcją, więc zwróć uwagę na więcej parametrów z możliwością aktualizacji w przyszłych wersjach MultiChain 2.0.

Wbudowane metadane

MultiChain 1.0.x obsługuje już niesformatowane (binarne) metadane transakcji, które mogą być osadzane w stanie surowym lub opakowane w element strumienia. Pierwsza wersja zapoznawcza MultiChain 2.0 rozszerzyło to aby umożliwić opcjonalną reprezentację metadanych w formacie tekstowym lub JSON. We wszystkich tych przypadkach metadane pojawiają się w oddzielnym wyniku transakcji zawierającym plik OP_RETURN, co sprawia, że ​​dane wyjściowe nie są wydawane przez kolejne transakcje.

To wydanie MultiChain 2.0 wprowadza nowy typ metadanych, który nazywamy „inline”. Wbudowane metadane są przechowywane w ramach zwykłych danych wyjściowych transakcji, które można wydać, a więc są bezpośrednio powiązane z adresem i / lub zasobami tych danych wyjściowych. Podobnie jak w przypadku innych form metadanych, wbudowane metadane mogą być w formacie binarnym, tekstowym lub JSON i można je łatwo zapisywać i odczytywać za pośrednictwem wielu różnych interfejsów API.

Wbudowane metadane stają się naprawdę potężne, gdy są używane w połączeniu z niestandardowymi regułami dotyczącymi ważności transakcji. Jednym z przykładów jest wysłanie zasobów z datą wygaśnięcia lub z listą ograniczeń dotyczących tego, gdzie mogą się znaleźć. W tej wersji niestandardowe reguły walidacji można definiować tylko poprzez modyfikację języka C ++ MultiChain Kod źródłowy. Jednak gdy filtry zostaną zaimplementowane jako część Mapa drogowa MultiChain 2.0, reguły te zostaną napisane w JavaScript i zainstalowane w łańcuchu bloków przy użyciu zwykłych wywołań API.

Droga przed nami

W drugiej wersji zapoznawczej / alfa ukończyliśmy około połowy prac zaplanowanych w wydaniu społecznościowym MultiChain 2.0 typu open source. Możesz pobrać i wypróbować alfa 2, odwiedzając Wersje zapoznawcze MultiChain 2.0 strona. Na tej stronie znajdziesz również dokumentację dotyczącą nowych i ulepszonych interfejsów API.

Rozpoczęliśmy już pracę nad następną ważną funkcją MultiChain 2.0, którą nazywamy elementami strumieniowymi poza łańcuchem. W elemencie poza łańcuchem, tylko skrót ładunku elementu jest osadzony w łańcuchu, obok kluczy elementu i niektórych innych metadanych. Sam ładunek jest przechowywany lokalnie przez wydawcę i propagowany do subskrybentów strumienia przy użyciu udostępnianie plików peer-to-peer techniki, z hashem w łańcuchu zapewniającym weryfikację. Rezultatem jest ogromna poprawa skalowalności i wydajności łańcuchów bloków używanych do rejestrowania dużych ilości informacji, gdzie niektóre z nich są interesujące tylko dla niektórych uczestników. Chociaż nie była pierwotnie planowana dla MultiChain 2.0, ta funkcja zwiększyła naszą listę priorytetów w odpowiedzi na zapotrzebowanie użytkowników.

Jak zawsze, witaj swoją opinię na postępie MultiChain 2.0 i nie możemy się doczekać udostępnienia następnej wersji demonstracyjnej w odpowiednim czasie.

Prosimy o umieszczanie komentarzy na LinkedIn.

Znak czasu:

Więcej z Multichain