Будь осторожен с желаниями

Как вы относитесь к своему Интернету? Мне, например, нравится конфиденциальность и безопасность.

К сожалению, не имеет значения, что думает любой из нас. WebAssembly, захватывающая новая технология, которая позволяет браузерам запускать собственный низкоуровневый код, может положить конец конфиденциальности и безопасности в Интернете, как мы это знаем.

Что такое WebAssembly?

Короче говоря, WebAssembly - это среда выполнения, которая позволяет браузерам запускать собственный код. Когда я говорю родной, я имею в виду код, написанный на языках низкого уровня, таких как C, C ++, Rust и т. Д.

Это упрощенная схема принципов работы WebAssembly. Компилятор вводит код на языке, совместимом с LLVM, и создает двоичный файл .wasm.

Этот файл загружается и подключается к существующему коду JS уровнем взаимодействия JavaScript, а затем файл .wasm выполняется средой выполнения WebAssembly.

WebAssembly теперь полностью адаптирован и поддерживается всеми основными браузерами.

Что умеет WebAssembly?

WebAssembly предлагает исключительную производительность. Это означает, что ваши веб-сайты могут работать почти так же быстро, как и обычное программное обеспечение на вашем компьютере, вне браузера.

Я не могу не подчеркнуть, насколько это революционно. Он позволяет браузерам запускать программы и игры, которые раньше были недоступны из-за проблем с производительностью. Это сделает возможным комплексный опыт WebVR. WebAssembly может сделать Chromebook действительно полезным.

Одно из приложений WebAssembly, которое вы найдете очень интересным, - это Blazor от Microsoft. По сути, Microsoft портировала всю свою платформу .NET на WebAssembly и добавила поверх нее библиотеку пользовательского интерфейса.

Это означает, что если вы разработчик .NET, вы только что изучили разработку веб-приложений, ничего не делая.

Как это можно использовать?

Есть много способов. Это стало возможным благодаря нечитаемому характеру .wasm файлов. Их все еще можно декомпилировать и анализировать, но это не так просто, как пририсовать JavaScript.

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

Во-вторых, повышение производительности означает, что веб-сайты теперь могут лучше использовать ваше оборудование. Майнинг криптовалюты, например. И снова, как известно, заблокировать его будет сложно.

Наконец, есть проблемы с безопасностью. Благодаря такой большой мощности и низкоуровневому доступу становятся возможными определенные атаки (грубая сила) и уязвимости. Мы просто будем надеяться, что сообщество разработчиков ПО с открытым исходным кодом не отстает.

Заключительные примечания

Итак, Интернет определенно не будет прежним после широкого распространения WebAssembly.

Однако еще предстоит увидеть, насколько благоприятными или катастрофическими будут последствия. Спасибо, что прочитали, и дайте мне знать в комментариях, что вы думаете о WebAssembly!

Ресурсы