SafeNetwork открий новия интернет

SAFE Network новини – 31.10.2019

Накратко

Ето някои от основните неща тази седмица:

Маркетинг

Хелоуин дойде :jack_o_lantern: и да се надяваме, че тази седмица новините ще ви се сторят дяволски пълна с лакомства, в които да забиете зъби.

Първо имаме нова версия на представянето на мрежата за начинаещи! Огромно благодаря на @JPL, който допълни представянето с ABFT консенсус алгоритъма PARSEC; начините, по които мрежата се защитава от често срещани форми на атака; новият тип данни на AppendOnly и въвеждането на библиотеката за маршрутизиране quic-p2p, която замества Кръст (Crust). Абсолютно фантастична работа от @JPL както винаги. Първоначалното представяне е основен маркетингов инструмент, който използваме, когато говорим с хората за мрежата или когато просто трябва да опресним спомените си за различни части на мрежата, то винаги е под ръка. Толкова е хубаво, че чак е страшно :skull:.

Почти сме готови да изпратим още един октомврийски бюлетин. Трябва да направим няколко минимални редакции (искаме да е 100% перфектно), така че вероятно ще изпратим писмото утре, точно навреме за часа на вещиците.

И накрая в тази страховита нощ (добре ще спрем с препратките за Хелоуин), беше удоволствие да видим някои от вас да превключат телевизорите си към новия сезон на Силиконовата долина. Разбира се, ние работихме като съветници в последния сезон, но сме сигурни, че този сезон ще продължи да води разговора за необходимостта от децентрализирани мрежи, което винаги е чудесна новина за нас.

Трезори – Фаза 2

План на проекта

Успяхме да стартираме Трезорите с интегрирано маршрутизиране. Все още е необходима известна работа правилното създаване на секции и за свързване на SAFE Клиентските библиотеки с множество трезори, но вече получаваме първите обещаващи резултати: трезорите обменят съобщения и гласуват за събития чрез PARSEC и тези резултати показват, че се доближаваме до изпълнението на целта на Фаза 2а, т.е. работата на множество реални Трезенти в рамките на една мрежа.

С наближаването на края по работата на фаза 2a на Трезорите и останалите задачи, екипът вече има време да добави няколко подобрения и по-новите API-та в SAFE Клиентските библиотеки и така временно превключваме към плана на новите проект, насочен към следващата версия на SCL. Този план ще се използва за проследяване на предстоящите и по-нови API-та на високо ниво, а също и за проследяване на проблеми от SCL, срещани от CLI екипа.

SAFE CLI (Интерфейс на командния ред)

План на проекта

Развитието на authd (Удостоверяващият процес – Authenticator daemon) продължи с добри темпове и сме фокусирани върху добавянето на поддръжка за Windows. Много сме щастливи, че вече може да работи и като Windows процес. Създаването на процес в Windows не беше толкова сложно, но имахме някои малки предизвикателства, напр. в Windows трябва първо да бъде инсталирана услугата, преди да бъде стартирана (за разлика от Linux / macOS, където тя може да бъде просто стартирана), така че трябваше да добавим няколко допълнителни команди (инсталиране / деинсталиране), за authd, които се поддържат само за Windows сега. Windows също изисква администраторски разрешения не само да инсталира процеса, но и да го стартира и спре, така че ще добавим някои специфични за Windows подробности в Ръководството за потребителя, за да покрием тези аспекти.

authd следи заявките за разрешение, получени в паметта, и също така има списъка на крайните точки, абонирани за получаване на известия за тези заявки за разрешение (напр. SAFE Network App ще има абонамент), важно е тези списъци да бъдат подредени, за да не позволим да растат до безкрай. По този начин работихме върху някои подобрения, за да се справим с няколко сценария, при които заявките за достъп трябва да изчакат и автоматично да бъдат премахнати от списъка, както и автоматично да се отписват крайните точки, които престават да отговарят при опит за изпращане на уведомление. Всичко това помага authd да бъде по-стабилно и да използва намалено количество памет и ресурси.

Сега се опитваме да започнем с някои по-сложни тестове за интеграция, в идеалния случай се опитваме да се уверим, че authd работи добре с SAFE CLI, SAFE Network App, SAFE Browser и уеб приложения и ако всичко работи според очакванията, ще можем да го споделим съвсем скоро за да го изпробвате.

Този момент изглежда подходящ за включване на QA екипа в процеса, така че те активно преминават през най-новите разработки на authd и го подготвят.

Освен това  @marcin  напоследък участва с частта за интерфейса с чужди функции (Foreign Function Interface) на този контейнер, прави преглед на кода и помага на екипа с въпроси, свързани с FFI. Тази седмица той направи малък рефактор, премествайки специфичния за FFI код към модула FFI. Той също така е повдигнал някои малки PR-та, за да коригира проблеми със стила, което прави кода Rust по лесен.

Също така провеждаме дизайнерски дискусии във връзка с това как да продължим да развиваме safe-api. Сега разглеждаме начини за разкриване на повече API-та, които ще позволят на потребителите да манипулират всички типове данни, поддържани от мрежата, т.е. освен API-тата на ImmutableData, които вече излагаме, бихме искали да започнем да излагаме API-тата за директно манипулиране на публикувани / непубликувани AppendOnlyData, и MutableData типове данни. Разбира се, опитваме се да се уверим, че те са максимално приятелски и лесни за използване, като първо осигуряват приятни абстракции за най-често срещаните случаи на употреба. Ще споделим повече подробности, след като имаме първоначална чернова на всичко това.

SAFE Network приложение/програма (десктоп)

План на проекта

В миналия дизайнерски спринт фокусът беше насочен към Трезорите и по-конкретно как Трезор може да бъде инсталиран и задействан лесно от SAFE Network програмата.

Първоначално започнахме като се насочихме към присъединяването на нов потребител. Как може човек да предложи част от ресурсите на компютъра си и да спечели нов акаунт?

Първоначално разгледахме няколко подхода към това, но се спряхме на повторната употреба на част от езика и потоците от предишни потребителски проучвания, като дадем възможност на потребителя да използва Трезор за генериране на покана за акаунт – предварително подготвен, за да им даде всичко необходимо за стартиране и използване. Това, разбира се, ще трябва да бъде тествано с реални потребители своевременно, но засега подготвяме пълния пакет Трезор, като това е основния ни подход.

Оттам потребителят може да остави Трезора работещ, печелейки им Safecoin за финансиране на ежедневната им употреба на място за съхранение в мрежата.

Но този поток за добавяне на нови потребители е само една малка част от цялата картина на потребителския интерфейс на Трезора. Това, което е привидно проста програма, има различни режими на работа, които трябва да вземем предвид. Така че ние изграждаме и обмисляме потоци за:

  • Заделяне на място на твърдия диск и избиране на място за съхранение
  • Стартиране и спиране на трезора
  • Информация за състоянието на трезорите, дневник на събитията (log) и текущите приходи
  • Промяна на основни настройки, като например активиране на автоматично рестартиране
  • Избор за изпращане на печалба до конкретен портфейл или SafeID
  • Стартиране и управление на трезора, докато сте излезли, и след това „свързване“ към вашия акаунт по-късно, което позволява да бъде защитен, и прехвърляне на средства към портфейла на акаунта по подразбиране.
  • Как можем да позволим мониторинг и конфигуриране на Трезори, работещи от разстояние

Разбира се, свързваме нещата в съчетание с основната функционалност, но все още мислим как в кратък срок да пуснем по-напреднал мониторинг и по-богата статистика.

Стремим се да направим нещата солидни, полезни и разбираеми. Няма да стигнем до там само с един скок, а с поредица от стъпки и обратна връзка. Очакваме с нетърпение да ви покажем всички тези парчета, които ще се съберат много скоро.

От страна на внедряването тази седмица синхронизирахме  последните authd промени, както е описано по-горе, и започнахме да прилагаме потоци за просто приемане или отхвърляне на заявки за удостоверяване.

SAFE Network приложение/програма (мобилни устройства)

План на проекта

Развълнувани сме :smile:  да съобщим, че работата по разработването на SAFE Network приложението за мобилни устройства започна, тъй като API-тата на C # са налични и пакетът NuGet не е много далеч.

Вече приключихме първоначалната настройка на проекта и тази седмица отделихме известно време, за да разгърнем и планираме задачите за първата версия на SAFE Network приложението за мобилни устройства. Първо се фокусирахме върху дизайна на потребителския интерфейс и започнахме да работим на няколко екрана.

В следващите седмици ще ви информираме за повече подробности за това как мобилното SAFE Network приложение ще промени всичко и ще доведе до невиждани неща за мобилни устройства. Дизайнът, изработен от екипа на потребителския интерфейс, е наистина невероятен и ще бъде истинска радост да разработваме и използваме приложението.

SAFE Десктоп Браузър

План на проекта

Тази седмица пуснахме нова версия на SAFE браузъра (v0.15.2), която актуализира логиката за Вечната мрежа и най-накрая разкрива XorUrlEncoder. Тази версия също така актуализира Electron до v6.1.0 и коригира няколко грешки. А на macOS ще забележите, че приложението вече е нотариално заверено – няма повече грешки при отваряне под macOS Каталина!

При отваряне на предишна версия на вечния уеб браузър автоматично ще бъдете подканени да актуализирате до тази най-нова версия или ако изтегляте за първи път, използвайте връзката по-горе към страницата ни в GitHub.

Отвъд пускането на тази версия на браузъра, също така написахме някои по-подробни тестове за новата логика и започнахме пътя към надграждането до Electron 7. Също така работихме върху някои нови функции за по-лесно тестване и проверка на версиите, без усложнения, възникващи от механизмите за автоматично обновяване.

SAFE App C#

План на проекта

През последните няколко месеца в safe_app_csharp свършихме много работа и както можете да видите в плана на проекта, сме много близо до плодовете на успеха (в случая, стартиране) и по пътя  се справихме с различни проблеми под различни платформи.

През последните няколко седмици имахме проблеми със работата по изграждане и тестване на iOS CI и не успявахме да изпробваме API-то на CI-то. Тази седмица, след като опитахме различни методи и инструменти, успяхме да отстраним проблема (# 159, # 162) и сега успешно провеждаме тестовете за новите C # API-та на всички поддържани настолни и мобилни платформи.

Изложихме и ново API за задаване на пътя на файла за конфигурация на трезора, който е необходим за мобилните платформи за да се свържат с локалния / споделения трезор (# 158).

Това не би било възможно без @lionel.faber и екипа на SCL, които помогнаха в създаването на функция за настройка на пътя на конфигурационния файл на трезора в SCL (# 1051). С помощта на това API най-накрая успяхме да свържем мобилно устройство към споделения трезор. Оставаме още малко работа за свързване с локалния трезор, която се надяваме много скоро да бъде завършена.

Разкрихме и ново добавените разрешения за приложения за достъп до баланса и извършване на мутации (# 156).

Стареене на възел (Node Ageing)

План на проекта

Продължаваме с усилията си да пуснем механизма за преместване и да приложим избирането и изключването на Страрейшини (Elders).

На този първи фронт самият механизъм беше приложен миналата седмица, сега работим върху действителното задействане на преместването, когато е приложимо. Това напредва, но все още има подробности, които трябва да бъдат подобрени и изработени.

С избирането и изключването на Старейшини изпаднахме в проблеми с начина, по който те са включени в настоящия ни начин на работа. Както се оказа, многоетапният процес, който имаме в текущия код, често води до спиране на секции, когато се извършва избиране или изключване. В момента работим върху опростяването на това и премахваме риска от разкъсване на секция, когато наборът от старейшини се промени.

Освен това първата част от работата по опростяване на връзките между старейшините вече е завършена, като това позволява да почнем работата за обработка на множество присъединяващи известия едновременно. Този нов тест се оказа полезен и при разкриването на частни случаи, върху чието коригиране вече работим. Накрая постигнахме по-нататъшен напредък в проследяването на това дали възлите (компютрите) на Старейшините все още реагират или трябва да бъдат премахнати.

Полезни линкове

Подробна информация може да намерите както винаги във форума на международната общност: SAFE Network Forum

Ако имате въпроси може да ги зададете във Facebook групата на българската SAFE общност: https://www.facebook.com/groups/SafeNetworkBulgaria/

Ако искате да следите последните новини заповядайте във Facebook страницата на SAFE Network България: https://www.facebook.com/SafeNetworkBulgaria/