LevelDB & Crypto

بواسطة: Frontend Masters

Overview

Dive into cryptography fundamentals and LevelDB to build stronger, more secure applications! Code with James Halliday as you pair modern cryptography and the modular NoSQL databases of LevelDB to help you fortify your communications systems.

Syllabus

  • Introducing LevelDB
  • Methods and Lexicographically
  • Organizing Keys
  • Secondary Indexes
  • Inserting Data
  • Adding and Querying Data
  • Subleveldown
  • Level-Livefeed
  • Designing Modules
  • Best Practices
  • Q&A: IndexedDB vs. LocalStorage
  • Hashes
  • Approaches to Cryptography
  • Sodium and Chloride
  • Using Sodium
  • Secret-Handshake
  • merkle DAGs
  • Working with merkle DAGs
  • Introducing Kappa Architecture
  • Using Hyperlog
  • Database Replication and Duplex Streams
  • Hyperlog-index
  • Hyperkv and Hyperlog-sodium
  • Kappa Architecture Examples
  • WebRTC Swarm with Hyperlogs

Taught by

James Halliday

LevelDB & Crypto
الذهاب الي الدورة

LevelDB & Crypto

بواسطة: Frontend Masters

  • Frontend Masters
  • مدفوعة
  • الإنجليزية
  • متاح شهادة
  • متاح في أي وقت
  • الجميع
  • N/A
8.1.2PHP Version802msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (518ms)
    • Application (282ms)
    • 1 x Booting (64.58%)
      517.91ms
      1 x Application (35.18%)
      282.10ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      6 statements were executed10.94ms
      • select * from `courses` where `slug_ar` = 'leveldb-&-crypto' limit 1
        9.59ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. leveldb-&-crypto
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-06-14 18:22:52' where `id` = 2147
        500μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-06-14 18:22:52
        • 1. 2147
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (8)
        220μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        170μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (41) and `providers`.`deleted_at` is null
        210μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 2138 limit 1
        250μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 2138
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        AO5zTIFFeeHZu8WpGwzuh3NwBge3HBsMxThROC0y
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/leveld...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/leveldb-&-crypto
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "216.73.216.66" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "x-forwarded-for" => array:1 [ 0 => "216.73.216.66" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-ray" => array:1 [ 0 => "94fbdb019ed3000b-ORD" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "216.73.216.66" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_X_FORWARDED_FOR" => "216.73.216.66" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "94fbdb019ed3000b-ORD" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "24382" "REMOTE_ADDR" => "172.70.127.117" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/leveldb-&-crypto" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1749925371.4376 "REQUEST_TIME" => 1749925371 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Sat, 14 Jun 2025 18:22:52 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IjB1ZSt3SGZlNkFNUFVWNVZRZ0ppZEE9PSIsInZhbHVlIjoiUjJ1M2s2SWRkYTVRSE9QbTd2SnF3L3hiL21NWDgvR1JQcmkrOUZsd3RENlhLWVdaMEIwbnZ0S0lKY0o1b1I5bHJ4MjNycWcwNVhiUWsyb2RwL2VzeFRKQ2MzZyt3Z3JFZGhBdzZINzlLUzIwMlhCTmRHWFpsYWxnN3NyTDN4SU8iLCJtYWMiOiI0NmVhYmU0NWI5ODc4ZjIzZjQwODZmMjFkOTkxNGViYmI4MDZlOTVjY2YxZmU3MTRiZjA3OWI2YTFkNzQ2ZDBjIiwidGFnIjoiIn0%3D; expires=Sat, 14 Jun 2025 20:22:52 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6IjB1ZSt3SGZlNkFNUFVWNVZRZ0ppZEE9PSIsInZhbHVlIjoiUjJ1M2s2SWRkYTVRSE9QbTd2SnF3L3hiL21NWDgvR1JQcmkrOUZsd3RENlhLWVdaMEIwbnZ0S0lKY0o1b1I5bHJ4MjNyc" 1 => "laravel_session=eyJpdiI6IktURGcvYWE1amlKWm5kSkIwYTdYZVE9PSIsInZhbHVlIjoiMVRxUzRpWHVoTTAzNDd3ejBnMnhMWHNIOGxQbWcvV0N2R1lHVnY5VGZCeU4yRVZGK3E4ZWJyZTRIM1ZvM0l3U29xTWJORCtHK3dLNTl5aExjSXJOTkFQU2VTMnYrRkozMmgxdXlTdTc5aEZ0VXNBL1prdjlJU1JGNjBacHhvZjIiLCJtYWMiOiJlZDQ4MGQ4NzkzNDI5ZjI0MjhhODA1OGJmN2JhOGFlYzVmYmJhMTU2ZjM5MWM3Zjg4Y2YwMDliYWRjMzYxNzkyIiwidGFnIjoiIn0%3D; expires=Sat, 14 Jun 2025 20:22:52 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6IktURGcvYWE1amlKWm5kSkIwYTdYZVE9PSIsInZhbHVlIjoiMVRxUzRpWHVoTTAzNDd3ejBnMnhMWHNIOGxQbWcvV0N2R1lHVnY5VGZCeU4yRVZGK3E4ZWJyZTRIM1ZvM0l3U29x" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IjB1ZSt3SGZlNkFNUFVWNVZRZ0ppZEE9PSIsInZhbHVlIjoiUjJ1M2s2SWRkYTVRSE9QbTd2SnF3L3hiL21NWDgvR1JQcmkrOUZsd3RENlhLWVdaMEIwbnZ0S0lKY0o1b1I5bHJ4MjNycWcwNVhiUWsyb2RwL2VzeFRKQ2MzZyt3Z3JFZGhBdzZINzlLUzIwMlhCTmRHWFpsYWxnN3NyTDN4SU8iLCJtYWMiOiI0NmVhYmU0NWI5ODc4ZjIzZjQwODZmMjFkOTkxNGViYmI4MDZlOTVjY2YxZmU3MTRiZjA3OWI2YTFkNzQ2ZDBjIiwidGFnIjoiIn0%3D; expires=Sat, 14-Jun-2025 20:22:52 GMT; path=/XSRF-TOKEN=eyJpdiI6IjB1ZSt3SGZlNkFNUFVWNVZRZ0ppZEE9PSIsInZhbHVlIjoiUjJ1M2s2SWRkYTVRSE9QbTd2SnF3L3hiL21NWDgvR1JQcmkrOUZsd3RENlhLWVdaMEIwbnZ0S0lKY0o1b1I5bHJ4MjNyc" 1 => "laravel_session=eyJpdiI6IktURGcvYWE1amlKWm5kSkIwYTdYZVE9PSIsInZhbHVlIjoiMVRxUzRpWHVoTTAzNDd3ejBnMnhMWHNIOGxQbWcvV0N2R1lHVnY5VGZCeU4yRVZGK3E4ZWJyZTRIM1ZvM0l3U29xTWJORCtHK3dLNTl5aExjSXJOTkFQU2VTMnYrRkozMmgxdXlTdTc5aEZ0VXNBL1prdjlJU1JGNjBacHhvZjIiLCJtYWMiOiJlZDQ4MGQ4NzkzNDI5ZjI0MjhhODA1OGJmN2JhOGFlYzVmYmJhMTU2ZjM5MWM3Zjg4Y2YwMDliYWRjMzYxNzkyIiwidGFnIjoiIn0%3D; expires=Sat, 14-Jun-2025 20:22:52 GMT; path=/; httponlylaravel_session=eyJpdiI6IktURGcvYWE1amlKWm5kSkIwYTdYZVE9PSIsInZhbHVlIjoiMVRxUzRpWHVoTTAzNDd3ejBnMnhMWHNIOGxQbWcvV0N2R1lHVnY5VGZCeU4yRVZGK3E4ZWJyZTRIM1ZvM0l3U29x" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "AO5zTIFFeeHZu8WpGwzuh3NwBge3HBsMxThROC0y" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/leveldb-&-crypto" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]