{"id":224830,"date":"2026-09-10T10:58:06","date_gmt":"2026-09-10T10:58:06","guid":{"rendered":"https:\/\/neodata.com.uy\/labs\/series\/"},"modified":"2026-09-10T10:58:06","modified_gmt":"2026-09-10T10:58:06","slug":"series","status":"publish","type":"page","link":"https:\/\/neodata.com.uy\/labs\/series\/","title":{"rendered":"Series"},"content":{"rendered":"<div class=\"et_pb_section_0 et_pb_section et_section_regular et_block_section\">\n<div class=\"et_pb_row_0 et_pb_row et_pb_equal_columns et_pb_gutters1 et_block_row\">\n<div class=\"et_pb_column_0 et_pb_column et_pb_column_4_4 et-last-child et_block_column et_pb_css_mix_blend_mode_passthrough\">\n<div class=\"et_pb_text_0 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module preset--module--divi-text--default\"><div class=\"et_pb_text_inner\">    <div class=\"nlabs-series-explorer\" data-page-size=\"12\">\r\n        <style>\r\n            .nlabs-series-explorer,\r\n            .nlabs-series-explorer * { box-sizing: border-box; }\r\n            .nlabs-series-explorer {\r\n                --nl-ink: #0a0f1d;\r\n                --nl-muted: #5e6574;\r\n                --nl-blue: #022eee;\r\n                --nl-blue-soft: #edf1ff;\r\n                --nl-line: #dfe4ed;\r\n                --nl-surface: #f7f8fb;\r\n                --nl-white: #fff;\r\n                color: var(--nl-ink);\r\n                font-family: Geist, Helvetica, Arial, sans-serif;\r\n                width: 100%;\r\n            }\r\n            .nlabs-series-explorer a { color: inherit; }\r\n            .nlabs-series-shell { width: min(1380px, 90vw); margin: 0 auto; }\r\n            .nlabs-series-hero {\r\n                position: relative;\r\n                overflow: hidden;\r\n                background: var(--nl-ink);\r\n                color: var(--nl-white);\r\n                padding: clamp(78px, 10vw, 148px) 0 clamp(64px, 8vw, 112px);\r\n            }\r\n            .nlabs-series-hero::after {\r\n                content: '';\r\n                position: absolute;\r\n                width: min(48vw, 680px);\r\n                aspect-ratio: 1;\r\n                right: -10%;\r\n                top: -42%;\r\n                border: 1px solid rgba(255,255,255,.14);\r\n                border-radius: 50%;\r\n                box-shadow: 0 0 0 58px rgba(2,46,238,.11), 0 0 0 116px rgba(2,46,238,.055);\r\n                pointer-events: none;\r\n            }\r\n            .nlabs-series-eyebrow {\r\n                margin: 0 0 22px;\r\n                color: #8ea3ff;\r\n                font: 700 13px\/1.2 Geist, sans-serif;\r\n                letter-spacing: .16em;\r\n                text-transform: uppercase;\r\n            }\r\n            .nlabs-series-hero h1 {\r\n                position: relative;\r\n                z-index: 1;\r\n                max-width: 900px;\r\n                margin: 0;\r\n                color: var(--nl-white);\r\n                font-family: \"Space Grotesk\", Helvetica, Arial, sans-serif;\r\n                font-size: clamp(48px, 7vw, 94px);\r\n                font-weight: 700;\r\n                line-height: .98;\r\n                letter-spacing: -.045em;\r\n            }\r\n            .nlabs-series-intro {\r\n                position: relative;\r\n                z-index: 1;\r\n                max-width: 720px;\r\n                margin: 30px 0 0;\r\n                color: rgba(255,255,255,.72);\r\n                font-size: clamp(18px, 2vw, 23px);\r\n                line-height: 1.55;\r\n            }\r\n            .nlabs-series-stats {\r\n                position: relative;\r\n                z-index: 1;\r\n                display: flex;\r\n                flex-wrap: wrap;\r\n                gap: 14px 34px;\r\n                margin-top: 46px;\r\n                padding-top: 24px;\r\n                border-top: 1px solid rgba(255,255,255,.16);\r\n            }\r\n            .nlabs-series-stat { display: flex; align-items: baseline; gap: 9px; }\r\n            .nlabs-series-stat strong {\r\n                color: var(--nl-white);\r\n                font-family: \"Space Grotesk\", sans-serif;\r\n                font-size: 26px;\r\n                line-height: 1;\r\n            }\r\n            .nlabs-series-stat span { color: rgba(255,255,255,.58); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }\r\n            .nlabs-series-directory { padding: clamp(70px, 8vw, 112px) 0; background: var(--nl-surface); }\r\n            .nlabs-series-section-head {\r\n                display: grid;\r\n                grid-template-columns: minmax(0, 1fr) minmax(280px, 520px);\r\n                gap: 40px;\r\n                align-items: end;\r\n                margin-bottom: 38px;\r\n            }\r\n            .nlabs-series-section-head h2 {\r\n                margin: 0;\r\n                color: var(--nl-ink);\r\n                font-family: \"Space Grotesk\", sans-serif;\r\n                font-size: clamp(36px, 4vw, 58px);\r\n                font-weight: 700;\r\n                line-height: 1.04;\r\n                letter-spacing: -.035em;\r\n            }\r\n            .nlabs-series-section-head p { margin: 0; color: var(--nl-muted); font-size: 17px; line-height: 1.65; }\r\n            .nlabs-series-grid {\r\n                display: grid;\r\n                grid-template-columns: repeat(3, minmax(0, 1fr));\r\n                gap: 22px;\r\n            }\r\n            .nlabs-series-card {\r\n                display: flex;\r\n                min-height: 310px;\r\n                flex-direction: column;\r\n                padding: 28px;\r\n                background: var(--nl-white);\r\n                border: 1px solid var(--nl-line);\r\n                border-radius: 16px;\r\n                box-shadow: 0 10px 34px rgba(10,15,29,.045);\r\n                transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;\r\n            }\r\n            .nlabs-series-card:hover { transform: translateY(-4px); border-color: #b8c4fb; box-shadow: 0 18px 44px rgba(10,15,29,.09); }\r\n            .nlabs-series-card-top { display: flex; align-items: center; justify-content: space-between; gap: 16px; }\r\n            .nlabs-series-index { color: var(--nl-blue); font-size: 12px; font-weight: 700; letter-spacing: .13em; }\r\n            .nlabs-series-count { color: var(--nl-muted); font-size: 12px; }\r\n            .nlabs-series-card h3 {\r\n                margin: 26px 0 20px;\r\n                color: var(--nl-ink);\r\n                font-family: \"Space Grotesk\", sans-serif;\r\n                font-size: 25px;\r\n                font-weight: 700;\r\n                line-height: 1.14;\r\n                letter-spacing: -.025em;\r\n            }\r\n            .nlabs-series-card h3 a { color: inherit; text-decoration: none; }\r\n            .nlabs-series-card h3 a:hover { color: var(--nl-blue); }\r\n            .nlabs-series-description { margin: -8px 0 22px; color: var(--nl-muted); font-size: 13px; line-height: 1.55; }\r\n            .nlabs-series-parts { list-style: none !important; margin: 0 0 26px !important; padding: 0 !important; }\r\n            .nlabs-series-parts li { display: grid; grid-template-columns: 46px 1fr; gap: 10px; padding: 9px 0; border-top: 1px solid #edf0f5; font-size: 13px; line-height: 1.35; }\r\n            .nlabs-series-parts span { color: var(--nl-blue); font-weight: 650; }\r\n            .nlabs-series-parts a { text-decoration: none; }\r\n            .nlabs-series-parts a:hover { color: var(--nl-blue); }\r\n            .nlabs-series-open {\r\n                appearance: none;\r\n                margin-top: auto;\r\n                padding: 0;\r\n                border: 0;\r\n                background: none;\r\n                color: var(--nl-blue);\r\n                cursor: pointer;\r\n                font: 700 13px\/1.2 Geist, sans-serif;\r\n                letter-spacing: .04em;\r\n                text-align: left;\r\n            }\r\n            .nlabs-series-open::after { content: '  \u2192'; }\r\n            .nlabs-browser { padding: clamp(76px, 9vw, 124px) 0; background: var(--nl-white); }\r\n            .nlabs-filter-panel {\r\n                display: grid;\r\n                grid-template-columns: 1.25fr repeat(5, minmax(125px, .75fr)) auto;\r\n                gap: 12px;\r\n                margin: 36px 0 24px;\r\n                padding: 16px;\r\n                background: var(--nl-surface);\r\n                border: 1px solid var(--nl-line);\r\n                border-radius: 14px;\r\n            }\r\n            .nlabs-filter-field { display: flex; flex-direction: column; gap: 7px; }\r\n            .nlabs-filter-field label { color: var(--nl-muted); font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }\r\n            .nlabs-filter-field input,\r\n            .nlabs-filter-field select {\r\n                width: 100%;\r\n                min-height: 48px;\r\n                margin: 0;\r\n                padding: 0 13px;\r\n                border: 1px solid #cfd5df;\r\n                border-radius: 8px;\r\n                background: var(--nl-white);\r\n                color: var(--nl-ink);\r\n                font: 500 14px\/1 Geist, sans-serif;\r\n                outline: none;\r\n            }\r\n            .nlabs-filter-field input:focus,\r\n            .nlabs-filter-field select:focus { border-color: var(--nl-blue); box-shadow: 0 0 0 3px rgba(2,46,238,.1); }\r\n            .nlabs-filter-reset {\r\n                align-self: end;\r\n                min-height: 48px;\r\n                padding: 0 16px;\r\n                border: 1px solid var(--nl-ink);\r\n                border-radius: 8px;\r\n                background: var(--nl-ink);\r\n                color: var(--nl-white);\r\n                cursor: pointer;\r\n                font: 700 12px\/1 Geist, sans-serif;\r\n            }\r\n            .nlabs-result-bar { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 24px; color: var(--nl-muted); font-size: 13px; }\r\n            .nlabs-active-context { color: var(--nl-blue); font-weight: 650; }\r\n            .nlabs-article-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 22px; }\r\n            .nlabs-article-card {\r\n                overflow: hidden;\r\n                background: var(--nl-white);\r\n                border: 1px solid var(--nl-line);\r\n                border-radius: 14px;\r\n                transition: transform .2s ease, box-shadow .2s ease;\r\n            }\r\n            .nlabs-article-card[hidden],\r\n            .nlabs-load-more[hidden] { display: none !important; }\r\n            .nlabs-article-card:hover { transform: translateY(-3px); box-shadow: 0 16px 38px rgba(10,15,29,.09); }\r\n            .nlabs-article-image { display: block; aspect-ratio: 16\/9; overflow: hidden; background: #e8ebf1; }\r\n            .nlabs-article-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }\r\n            .nlabs-article-card:hover .nlabs-article-image img { transform: scale(1.025); }\r\n            .nlabs-article-body { padding: 22px; }\r\n            .nlabs-article-meta { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 15px; }\r\n            .nlabs-chip { display: inline-flex; align-items: center; min-height: 25px; padding: 0 8px; border-radius: 999px; background: var(--nl-blue-soft); color: var(--nl-blue); font-size: 10px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }\r\n            .nlabs-chip-muted { background: #f0f1f4; color: #666d79; }\r\n            .nlabs-article-card h3 { margin: 0 0 12px; font-family: \"Space Grotesk\", sans-serif; font-size: 23px; font-weight: 700; line-height: 1.16; letter-spacing: -.025em; }\r\n            .nlabs-article-card h3 a { color: var(--nl-ink); text-decoration: none; }\r\n            .nlabs-article-card h3 a:hover { color: var(--nl-blue); }\r\n            .nlabs-article-excerpt { margin: 0; color: var(--nl-muted); font-size: 14px; line-height: 1.58; }\r\n            .nlabs-article-date { margin-top: 18px; color: #89909d; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; }\r\n            .nlabs-load-more {\r\n                display: block;\r\n                min-width: 180px;\r\n                min-height: 50px;\r\n                margin: 34px auto 0;\r\n                padding: 0 22px;\r\n                border: 1px solid var(--nl-blue);\r\n                border-radius: 8px;\r\n                background: var(--nl-white);\r\n                color: var(--nl-blue);\r\n                cursor: pointer;\r\n                font: 700 13px\/1 Geist, sans-serif;\r\n            }\r\n            .nlabs-empty { display: none; padding: 48px 24px; border: 1px dashed #c7ccd6; border-radius: 12px; color: var(--nl-muted); text-align: center; }\r\n            @media (max-width: 1180px) {\r\n                .nlabs-series-grid, .nlabs-article-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }\r\n                .nlabs-filter-panel { grid-template-columns: repeat(3, minmax(0, 1fr)); }\r\n                .nlabs-filter-reset { align-self: end; }\r\n            }\r\n            @media (max-width: 760px) {\r\n                .nlabs-series-shell { width: min(100% - 36px, 1380px); }\r\n                .nlabs-series-hero { padding-top: 64px; }\r\n                .nlabs-series-section-head { grid-template-columns: 1fr; gap: 18px; }\r\n                .nlabs-series-grid, .nlabs-article-grid { grid-template-columns: 1fr; }\r\n                .nlabs-filter-panel { grid-template-columns: 1fr; }\r\n                .nlabs-series-card { min-height: 0; }\r\n                .nlabs-result-bar { align-items: flex-start; flex-direction: column; gap: 5px; }\r\n            }\r\n            @media (prefers-reduced-motion: reduce) {\r\n                .nlabs-series-card, .nlabs-article-card, .nlabs-article-image img { transition: none; }\r\n            }\r\n        <\/style>\r\n\r\n        <section class=\"nlabs-series-hero\">\r\n            <div class=\"nlabs-series-shell\">\r\n                <p class=\"nlabs-series-eyebrow\">\/\/ Series<\/p>\r\n                <h1>Research,<br>in sequence.<\/h1>\r\n                <p class=\"nlabs-series-intro\">Follow connected investigations from first principles to implementation consequences\u2014or search the complete archive by topic, format and evidence.<\/p>\r\n                <div class=\"nlabs-series-stats\" aria-label=\"Publication overview\">\r\n                    <div class=\"nlabs-series-stat\"><strong>10<\/strong><span>public series<\/span><\/div>\r\n                    <div class=\"nlabs-series-stat\"><strong>24<\/strong><span>articles in series<\/span><\/div>\r\n                    <div class=\"nlabs-series-stat\"><strong>58<\/strong><span>published articles<\/span><\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/section>\r\n\r\n        <section class=\"nlabs-series-directory\" aria-labelledby=\"nlabs-series-heading\">\r\n            <div class=\"nlabs-series-shell\">\r\n                <div class=\"nlabs-series-section-head\">\r\n                    <div>\r\n                        <p class=\"nlabs-series-eyebrow\">\/\/ Read in order<\/p>\r\n                        <h2 id=\"nlabs-series-heading\">Explore the series.<\/h2>\r\n                    <\/div>\r\n                    <p>Each series gathers articles that develop one question across several layers: concept, mechanism, evidence and operational consequence.<\/p>\r\n                <\/div>\r\n                <div class=\"nlabs-series-grid\">\r\n                                                                    <article class=\"nlabs-series-card\">\r\n                            <div class=\"nlabs-series-card-top\">\r\n                                <span class=\"nlabs-series-index\">SERIES 01<\/span>\r\n                                <span class=\"nlabs-series-count\">2 articles<\/span>\r\n                            <\/div>\r\n                                                        <h3><a href=\"https:\/\/neodata.com.uy\/labs\/series\/authentication-ceremonies\/\">Authentication Ceremonies<\/a><\/h3>\r\n                                                            <p class=\"nlabs-series-description\">How authentication succeeds or fails across credentials, recovery paths and session creation.<\/p>\r\n                                                        <ol class=\"nlabs-series-parts\">\r\n                                                                                                        <li><span>Part 1<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/six-digits-are-not-the-authentication-ceremony\/\">Six digits are not the authentication ceremony.<\/a><\/li>\r\n                                                                                                        <li><span>Part 2<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/sms-otp-is-now-a-restricted-authenticator\/\">SMS OTP is now a restricted authenticator. The hard part is what replaces it.<\/a><\/li>\r\n                                                            <\/ol>\r\n                            <a class=\"nlabs-series-open\" href=\"https:\/\/neodata.com.uy\/labs\/series\/authentication-ceremonies\/\">Open this series<\/a>\r\n                        <\/article>\r\n                                                                    <article class=\"nlabs-series-card\">\r\n                            <div class=\"nlabs-series-card-top\">\r\n                                <span class=\"nlabs-series-index\">SERIES 02<\/span>\r\n                                <span class=\"nlabs-series-count\">3 articles<\/span>\r\n                            <\/div>\r\n                                                        <h3><a href=\"https:\/\/neodata.com.uy\/labs\/series\/biometrics-in-2d-barcodes\/\">Biometrics in 2D Barcodes<\/a><\/h3>\r\n                                                            <p class=\"nlabs-series-description\">What survives when biometric information is compressed, printed, scanned and recovered from two-dimensional symbols.<\/p>\r\n                                                        <ol class=\"nlabs-series-parts\">\r\n                                                                                                        <li><span>Part 1<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/a-face-fits-in-960-bytes\/\">A face fits in 960 bytes.<\/a><\/li>\r\n                                                                                                        <li><span>Part 2<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/what-survives-the-print-the-scan-and-the-phone\/\">What survives the print, the scan and the phone.<\/a><\/li>\r\n                                                                                                        <li><span>Part 3<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/colour-buys-capacity-in-exchange-for-illumination\/\">Colour buys capacity in exchange for illumination.<\/a><\/li>\r\n                                                            <\/ol>\r\n                            <a class=\"nlabs-series-open\" href=\"https:\/\/neodata.com.uy\/labs\/series\/biometrics-in-2d-barcodes\/\">Open this series<\/a>\r\n                        <\/article>\r\n                                                                    <article class=\"nlabs-series-card\">\r\n                            <div class=\"nlabs-series-card-top\">\r\n                                <span class=\"nlabs-series-index\">SERIES 03<\/span>\r\n                                <span class=\"nlabs-series-count\">2 articles<\/span>\r\n                            <\/div>\r\n                                                        <h3><a href=\"https:\/\/neodata.com.uy\/labs\/series\/cryptography-education\/\">Cryptography Education<\/a><\/h3>\r\n                                                            <p class=\"nlabs-series-description\">How cryptographic properties can be taught before the underlying algebra, and where current educational materials leave gaps.<\/p>\r\n                                                        <ol class=\"nlabs-series-parts\">\r\n                                                                                                        <li><span>Part 1<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/cryptography-can-start-before-algebra\/\">Cryptography can start before algebra.<\/a><\/li>\r\n                                                                                                        <li><span>Part 2<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/the-other-three-questions\/\">The other three questions.<\/a><\/li>\r\n                                                            <\/ol>\r\n                            <a class=\"nlabs-series-open\" href=\"https:\/\/neodata.com.uy\/labs\/series\/cryptography-education\/\">Open this series<\/a>\r\n                        <\/article>\r\n                                                                    <article class=\"nlabs-series-card\">\r\n                            <div class=\"nlabs-series-card-top\">\r\n                                <span class=\"nlabs-series-index\">SERIES 04<\/span>\r\n                                <span class=\"nlabs-series-count\">2 articles<\/span>\r\n                            <\/div>\r\n                                                        <h3><a href=\"https:\/\/neodata.com.uy\/labs\/series\/format-preserving-encryption\/\">Format-Preserving Encryption<\/a><\/h3>\r\n                                                            <p class=\"nlabs-series-description\">What format-preserving encryption reveals, how its modes differ and why migration is hard to infer from ciphertext alone.<\/p>\r\n                                                        <ol class=\"nlabs-series-parts\">\r\n                                                                                                        <li><span>Part 1<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/preserving-the-format-preserves-the-leakage\/\">Preserving the format preserves the leakage.<\/a><\/li>\r\n                                                                                                        <li><span>Part 2<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/the-ciphertext-does-not-say-which-mode-produced-it\/\">The ciphertext does not say which mode produced it.<\/a><\/li>\r\n                                                            <\/ol>\r\n                            <a class=\"nlabs-series-open\" href=\"https:\/\/neodata.com.uy\/labs\/series\/format-preserving-encryption\/\">Open this series<\/a>\r\n                        <\/article>\r\n                                                                    <article class=\"nlabs-series-card\">\r\n                            <div class=\"nlabs-series-card-top\">\r\n                                <span class=\"nlabs-series-index\">SERIES 05<\/span>\r\n                                <span class=\"nlabs-series-count\">3 articles<\/span>\r\n                            <\/div>\r\n                                                        <h3><a href=\"https:\/\/neodata.com.uy\/labs\/series\/key-containers-on-mobile-devices\/\">Key Containers on Mobile Devices<\/a><\/h3>\r\n                                                            <p class=\"nlabs-series-description\">A verifiability-first guide to mobile key custody across software, TEE, StrongBox and Secure Enclave environments.<\/p>\r\n                                                        <ol class=\"nlabs-series-parts\">\r\n                                                                                                        <li><span>Part 1<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/what-hardware-backed-means-on-android\/\">What &#8220;hardware-backed&#8221; means on Android.<\/a><\/li>\r\n                                                                                                        <li><span>Part 2<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/the-certificate-has-two-lists\/\">The certificate has two lists.<\/a><\/li>\r\n                                                                                                        <li><span>Part 3<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/seven-containers-ranked-by-what-you-can-prove\/\">Seven containers, ranked by what you can prove.<\/a><\/li>\r\n                                                            <\/ol>\r\n                            <a class=\"nlabs-series-open\" href=\"https:\/\/neodata.com.uy\/labs\/series\/key-containers-on-mobile-devices\/\">Open this series<\/a>\r\n                        <\/article>\r\n                                                                    <article class=\"nlabs-series-card\">\r\n                            <div class=\"nlabs-series-card-top\">\r\n                                <span class=\"nlabs-series-index\">SERIES 06<\/span>\r\n                                <span class=\"nlabs-series-count\">3 articles<\/span>\r\n                            <\/div>\r\n                                                        <h3><a href=\"https:\/\/neodata.com.uy\/labs\/series\/offline-visual-exchange\/\">Offline Visual Exchange<\/a><\/h3>\r\n                                                            <p class=\"nlabs-series-description\">Protocol, optical and replay-control decisions for encrypted exchanges between fully offline mobile devices and disconnected verifiers.<\/p>\r\n                                                        <ol class=\"nlabs-series-parts\">\r\n                                                                                                        <li><span>Part 1<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/one-way-qr-key-establishment\/\">A one-way QR can establish a key, but not a conversation.<\/a><\/li>\r\n                                                                                                        <li><span>Part 2<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/three-hundred-milliseconds-is-an-operating-envelope\/\">Three hundred milliseconds is an operating envelope.<\/a><\/li>\r\n                                                                                                        <li><span>Part 3<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/secure-key-cannot-make-photographed-qr-fresh\/\">A secure key cannot make a photographed QR fresh.<\/a><\/li>\r\n                                                            <\/ol>\r\n                            <a class=\"nlabs-series-open\" href=\"https:\/\/neodata.com.uy\/labs\/series\/offline-visual-exchange\/\">Open this series<\/a>\r\n                        <\/article>\r\n                                                                    <article class=\"nlabs-series-card\">\r\n                            <div class=\"nlabs-series-card-top\">\r\n                                <span class=\"nlabs-series-index\">SERIES 07<\/span>\r\n                                <span class=\"nlabs-series-count\">2 articles<\/span>\r\n                            <\/div>\r\n                                                        <h3><a href=\"https:\/\/neodata.com.uy\/labs\/series\/pkcs-11-key-policy\/\">PKCS #11 Key Policy<\/a><\/h3>\r\n                                                            <p class=\"nlabs-series-description\">How handles, attributes and mechanisms determine what a token-held key can actually do.<\/p>\r\n                                                        <ol class=\"nlabs-series-parts\">\r\n                                                                                                        <li><span>Part 1<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/the-handle-is-not-the-key\/\">The handle is not the key.<\/a><\/li>\r\n                                                                                                        <li><span>Part 2<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/audit-the-attributes-not-the-datasheet\/\">Audit the attributes, not the datasheet.<\/a><\/li>\r\n                                                            <\/ol>\r\n                            <a class=\"nlabs-series-open\" href=\"https:\/\/neodata.com.uy\/labs\/series\/pkcs-11-key-policy\/\">Open this series<\/a>\r\n                        <\/article>\r\n                                                                    <article class=\"nlabs-series-card\">\r\n                            <div class=\"nlabs-series-card-top\">\r\n                                <span class=\"nlabs-series-index\">SERIES 08<\/span>\r\n                                <span class=\"nlabs-series-count\">3 articles<\/span>\r\n                            <\/div>\r\n                                                        <h3><a href=\"https:\/\/neodata.com.uy\/labs\/series\/signature-footprint-engineering\/\">Signature Footprint Engineering<\/a><\/h3>\r\n                                                            <p class=\"nlabs-series-description\">Key, signature and proof-size trade-offs for cryptographic systems operating across storage and constrained transports.<\/p>\r\n                                                        <ol class=\"nlabs-series-parts\">\r\n                                                                                                        <li><span>Part 1<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/signature-key-size-matrix\/\">The signature is not the key.<\/a><\/li>\r\n                                                                                                        <li><span>Part 2<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/selective-proof-not-automatically-smaller\/\">A selective proof is not automatically smaller.<\/a><\/li>\r\n                                                                                                        <li><span>Part 3<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/the-payload-must-fit-the-channel\/\">The payload must fit the channel.<\/a><\/li>\r\n                                                            <\/ol>\r\n                            <a class=\"nlabs-series-open\" href=\"https:\/\/neodata.com.uy\/labs\/series\/signature-footprint-engineering\/\">Open this series<\/a>\r\n                        <\/article>\r\n                                                                    <article class=\"nlabs-series-card\">\r\n                            <div class=\"nlabs-series-card-top\">\r\n                                <span class=\"nlabs-series-index\">SERIES 09<\/span>\r\n                                <span class=\"nlabs-series-count\">2 articles<\/span>\r\n                            <\/div>\r\n                                                        <h3><a href=\"https:\/\/neodata.com.uy\/labs\/series\/signature-nonces\/\">Signature Nonces<\/a><\/h3>\r\n                                                            <p class=\"nlabs-series-description\">Why nonce generation determines signature safety and how repeated signing exposes implementation failures.<\/p>\r\n                                                        <ol class=\"nlabs-series-parts\">\r\n                                                                                                        <li><span>Part 1<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/determinism-is-not-a-substitute-for-entropy\/\">Determinism is not a substitute for entropy.<\/a><\/li>\r\n                                                                                                        <li><span>Part 2<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/sign-the-same-message-twice\/\">Sign the same message twice.<\/a><\/li>\r\n                                                            <\/ol>\r\n                            <a class=\"nlabs-series-open\" href=\"https:\/\/neodata.com.uy\/labs\/series\/signature-nonces\/\">Open this series<\/a>\r\n                        <\/article>\r\n                                                                    <article class=\"nlabs-series-card\">\r\n                            <div class=\"nlabs-series-card-top\">\r\n                                <span class=\"nlabs-series-index\">SERIES 10<\/span>\r\n                                <span class=\"nlabs-series-count\">2 articles<\/span>\r\n                            <\/div>\r\n                                                        <h3><a href=\"https:\/\/neodata.com.uy\/labs\/series\/signed-bytes-and-parser-differentials\/\">Signed Bytes and Parser Differentials<\/a><\/h3>\r\n                                                            <p class=\"nlabs-series-description\">How signatures over bytes fail as a security boundary when verifiers and applications resolve different meanings.<\/p>\r\n                                                        <ol class=\"nlabs-series-parts\">\r\n                                                                                                        <li><span>Part 1<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/signatures-are-over-bytes-not-meaning\/\">Signatures are over bytes, not meaning.<\/a><\/li>\r\n                                                                                                        <li><span>Part 2<\/span><a href=\"https:\/\/neodata.com.uy\/labs\/the-verifier-and-the-parser-disagree\/\">The verifier and the parser disagree.<\/a><\/li>\r\n                                                            <\/ol>\r\n                            <a class=\"nlabs-series-open\" href=\"https:\/\/neodata.com.uy\/labs\/series\/signed-bytes-and-parser-differentials\/\">Open this series<\/a>\r\n                        <\/article>\r\n                                    <\/div>\r\n            <\/div>\r\n        <\/section>\r\n\r\n        <section class=\"nlabs-browser\" id=\"browse-articles\" aria-labelledby=\"nlabs-browser-heading\">\r\n            <div class=\"nlabs-series-shell\">\r\n                <div class=\"nlabs-series-section-head\">\r\n                    <div>\r\n                        <p class=\"nlabs-series-eyebrow\">\/\/ Complete archive<\/p>\r\n                        <h2 id=\"nlabs-browser-heading\">Find an article.<\/h2>\r\n                    <\/div>\r\n                    <p>Combine filters to move across research, field notes and marginalia. Selecting a series restores its intended reading order.<\/p>\r\n                <\/div>\r\n\r\n                <form class=\"nlabs-filter-panel\" aria-label=\"Filter articles\" onsubmit=\"return false;\">\r\n                    <div class=\"nlabs-filter-field\">\r\n                        <label for=\"nlabs-filter-search\">Search<\/label>\r\n                        <input id=\"nlabs-filter-search\" type=\"search\" placeholder=\"Title, subject or excerpt\">\r\n                    <\/div>\r\n                    <div class=\"nlabs-filter-field\">\r\n                        <label for=\"nlabs-filter-series\">Series<\/label>\r\n                        <select id=\"nlabs-filter-series\">\r\n                            <option value=\"\">All series<\/option>\r\n                            <option value=\"standalone\">Standalone articles<\/option>\r\n                                                            <option value=\"authentication-ceremonies\">Authentication Ceremonies<\/option>\r\n                                                            <option value=\"biometrics-in-2d-barcodes\">Biometrics in 2D Barcodes<\/option>\r\n                                                            <option value=\"cryptography-education\">Cryptography Education<\/option>\r\n                                                            <option value=\"format-preserving-encryption\">Format-Preserving Encryption<\/option>\r\n                                                            <option value=\"key-containers-on-mobile-devices\">Key Containers on Mobile Devices<\/option>\r\n                                                            <option value=\"offline-visual-exchange\">Offline Visual Exchange<\/option>\r\n                                                            <option value=\"pkcs-11-key-policy\">PKCS #11 Key Policy<\/option>\r\n                                                            <option value=\"signature-footprint-engineering\">Signature Footprint Engineering<\/option>\r\n                                                            <option value=\"signature-nonces\">Signature Nonces<\/option>\r\n                                                            <option value=\"signed-bytes-and-parser-differentials\">Signed Bytes and Parser Differentials<\/option>\r\n                                                    <\/select>\r\n                    <\/div>\r\n                    <div class=\"nlabs-filter-field\">\r\n                        <label for=\"nlabs-filter-category\">Category<\/label>\r\n                        <select id=\"nlabs-filter-category\">\r\n                            <option value=\"\">All categories<\/option>\r\n                                                            <option value=\"in-practice\">In Practice<\/option>\r\n                                                            <option value=\"marginalia\">Marginalia<\/option>\r\n                                                            <option value=\"research\">Research<\/option>\r\n                                                    <\/select>\r\n                    <\/div>\r\n                    <div class=\"nlabs-filter-field\">\r\n                        <label for=\"nlabs-filter-type\">Article type<\/label>\r\n                        <select id=\"nlabs-filter-type\">\r\n                            <option value=\"\">All types<\/option>\r\n                                                            <option value=\"analysis\">Analysis<\/option>\r\n                                                            <option value=\"primer\">Primer<\/option>\r\n                                                            <option value=\"review\">Review<\/option>\r\n                                                    <\/select>\r\n                    <\/div>\r\n                    <div class=\"nlabs-filter-field\">\r\n                        <label for=\"nlabs-filter-tag\">Tag<\/label>\r\n                        <select id=\"nlabs-filter-tag\">\r\n                            <option value=\"\">All tags<\/option>\r\n                                                            <option value=\"algorithms-primitives\">Algorithms &amp; Primitives<\/option>\r\n                                                            <option value=\"applied-cryptography\">Applied Cryptography<\/option>\r\n                                                            <option value=\"authentication\">Authentication<\/option>\r\n                                                            <option value=\"cryptographic-transition\">Cryptographic Transition<\/option>\r\n                                                            <option value=\"digital-identity\">Digital Identity<\/option>\r\n                                                            <option value=\"education\">Education<\/option>\r\n                                                            <option value=\"key-management\">Key Management<\/option>\r\n                                                            <option value=\"post-quantum\">Post-Quantum Cryptography<\/option>\r\n                                                            <option value=\"privacy\">Privacy<\/option>\r\n                                                            <option value=\"protocols\">Protocols<\/option>\r\n                                                            <option value=\"secure-hardware\">Secure Hardware<\/option>\r\n                                                            <option value=\"transport-systems\">Transport Systems<\/option>\r\n                                                            <option value=\"verifiable-credentials\">Verifiable Credentials<\/option>\r\n                                                    <\/select>\r\n                    <\/div>\r\n                    <div class=\"nlabs-filter-field\">\r\n                        <label for=\"nlabs-filter-sort\">Sort<\/label>\r\n                        <select id=\"nlabs-filter-sort\">\r\n                            <option value=\"default\">Default order<\/option>\r\n                            <option value=\"newest\">Newest first<\/option>\r\n                            <option value=\"oldest\">Oldest first<\/option>\r\n                            <option value=\"title\">Title A\u2013Z<\/option>\r\n                        <\/select>\r\n                    <\/div>\r\n                    <button class=\"nlabs-filter-reset\" type=\"button\">Reset<\/button>\r\n                <\/form>\r\n\r\n                <div class=\"nlabs-result-bar\" aria-live=\"polite\">\r\n                    <span class=\"nlabs-result-count\"><\/span>\r\n                    <span class=\"nlabs-active-context\"><\/span>\r\n                <\/div>\r\n\r\n                <div class=\"nlabs-article-grid\">\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"a cose_sign1 object is not its signing input. four transmitted fields become a different cbor structure before signature verification. marginalia primer algorithms &amp; primitives applied cryptography marginalia protocols\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"marginalia\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography marginalia protocols\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1788861600\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/a-cose-sign1-object-is-not-its-signing-input\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-marginalia-cose-sign1-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Translucent layers are rearranged in a precision fixture and bound with a blue filament before a signature press.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Marginalia<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/a-cose-sign1-object-is-not-its-signing-input\/\">A COSE_Sign1 object is not its signing input.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Four transmitted fields become a different CBOR structure before signature verification.<\/p>\r\n                                <div class=\"nlabs-article-date\">Sep 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"verification is not authorization. a valid signature answers a narrower question than most applications need to decide. marginalia primer algorithms &amp; primitives applied cryptography authentication digital identity marginalia\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"marginalia\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography authentication digital-identity marginalia\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1788343200\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/verification-is-not-authorization\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-marginalia-verification-authorization-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A sealed translucent document passes through a blue inspection ring before reaching a separate policy gate.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Marginalia<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/verification-is-not-authorization\/\">Verification is not authorization.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">A valid signature answers a narrower question than most applications need to decide.<\/p>\r\n                                <div class=\"nlabs-article-date\">Sep 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"127 bytes. an ieee 802.15.4 calculation begins with 127 octets. after framing and link security, only 81 may remain. marginalia primer applied cryptography marginalia\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"marginalia\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography marginalia\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1787911200\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/127-bytes\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-marginalia-127-bytes-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A long transparent packet tray is progressively occupied by metal, blue, glass and ceramic protocol layers.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Marginalia<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/127-bytes\/\">127 bytes.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">An IEEE 802.15.4 calculation begins with 127 octets. After framing and link security, only 81 may remain.<\/p>\r\n                                <div class=\"nlabs-article-date\">Aug 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"random-looking is not unpredictable. statistical appearance cannot establish cryptographic unpredictability when generator state is small, duplicated or recoverable. marginalia primer algorithms &amp; primitives applied cryptography marginalia\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"marginalia\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography marginalia\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1787479200\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/random-looking-is-not-unpredictable\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-marginalia-random-looking-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A repeating mechanical wheel and an entropy chamber produce two visually varied rows of small tokens.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Marginalia<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/random-looking-is-not-unpredictable\/\">Random-looking is not unpredictable.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Statistical appearance cannot establish cryptographic unpredictability when generator state is small, duplicated or recoverable.<\/p>\r\n                                <div class=\"nlabs-article-date\">Aug 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the other three questions. most cryptography education for children begins and ends with confidentiality. integrity, authentication and credentials can be modelled with simple roles and objects, even as age-assurance systems make those properties part of children&#039;s digital lives. cryptography education research analysis age assurance algorithms &amp; primitives applied cryptography authentication cryptography education digital identity education verifiable credentials\"\r\n                            data-series=\"cryptography-education\"\r\n                            data-category=\"research\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"age-assurance algorithms-primitives applied-cryptography authentication cryptography-education digital-identity education verifiable-credentials\"\r\n                            data-part=\"2\"\r\n                            data-date=\"1786960800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-other-three-questions\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"432\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-33-the-other-three-questions-768x432.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Three connected trust objects: a sealed glass sphere, a metal token and a ceramic credential card.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Cryptography Education \u00b7 Part 2<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-other-three-questions\/\">The other three questions.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Most cryptography education for children begins and ends with confidentiality. Integrity, authentication and credentials can be modelled with simple roles and objects, even as&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Aug 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"cryptography can start before algebra. children can learn the questions cryptography answers before they can learn the mathematics behind its algorithms. existing school materials teach secrecy well, but leave integrity, authentication, identity and trust comparatively unexplored. cryptography education research review algorithms &amp; primitives applied cryptography authentication cryptography education cybersecurity education digital identity education\"\r\n                            data-series=\"cryptography-education\"\r\n                            data-category=\"research\"\r\n                            data-type=\"review\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography authentication cryptography-education cybersecurity-education digital-identity education\"\r\n                            data-part=\"1\"\r\n                            data-date=\"1786528800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/cryptography-can-start-before-algebra\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"366\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-32-cryptography-before-algebra-768x366.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Paper envelope with a glass seal, metal key and ceramic blocks on a pale surface.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Cryptography Education \u00b7 Part 1<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Review<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/cryptography-can-start-before-algebra\/\">Cryptography can start before algebra.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Children can learn the questions cryptography answers before they can learn the mathematics behind its algorithms. Existing school materials teach secrecy well, but leave&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Aug 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the payload must fit the channel. a compact signed object needs one deterministic binary form and three explicit transport profiles. qr, nfc and bluetooth le fail in different ways when signature and key material cross their byte budgets. signature footprint engineering in practice analysis applied cryptography bluetooth low energy digital identity protocols qr codes transport systems\"\r\n                            data-series=\"signature-footprint-engineering\"\r\n                            data-category=\"in-practice\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography bluetooth-low-energy digital-identity protocols qr-codes transport-systems\"\r\n                            data-part=\"3\"\r\n                            data-date=\"1786323000\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-payload-must-fit-the-channel\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"432\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/constrained-payload-hardware-768x432.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Open rugged credential scanner showing its NFC coil, camera module and printed radio antenna\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Signature Footprint Engineering \u00b7 Part 3<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-payload-must-fit-the-channel\/\">The payload must fit the channel.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">A compact signed object needs one deterministic binary form and three explicit transport profiles. QR, NFC and Bluetooth LE fail in different ways when&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Aug 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"a selective proof is not automatically smaller. when attributes require independent signatures, bbs can replace n signatures with one multi-message signature, but its selective-disclosure proof grows with every hidden message. the useful crossover depends on what the comparison actually carries. signature footprint engineering in practice analysis applied cryptography digital identity privacy protocols verifiable credentials\"\r\n                            data-series=\"signature-footprint-engineering\"\r\n                            data-category=\"in-practice\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography digital-identity privacy protocols verifiable-credentials\"\r\n                            data-part=\"2\"\r\n                            data-date=\"1786322400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/selective-proof-not-automatically-smaller\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"432\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/bbs-aggregation-footprint-768x432.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Glass fiber strands converging through a machined metal optical coupler on a pale workbench\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Signature Footprint Engineering \u00b7 Part 2<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/selective-proof-not-automatically-smaller\/\">A selective proof is not automatically smaller.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">When attributes require independent signatures, BBS can replace N signatures with one multi-message signature, but its selective-disclosure proof grows with every hidden message. The&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Aug 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the signature is not the key. a byte-level comparison of rsa, elliptic-curve, pairing-based and post-quantum signatures shows when recurring signature traffic overtakes key provisioning and storage. signature footprint engineering in practice analysis applied cryptography post-quantum cryptography protocols transport systems\"\r\n                            data-series=\"signature-footprint-engineering\"\r\n                            data-category=\"in-practice\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography post-quantum protocols transport-systems\"\r\n                            data-part=\"1\"\r\n                            data-date=\"1786321800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/signature-key-size-matrix\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"432\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/signature-size-matrix-768x432.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Close-up of an open hardware security module, loose chip packages, a precision caliper and a fiber lead on a pale metrology bench\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Signature Footprint Engineering \u00b7 Part 1<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/signature-key-size-matrix\/\">The signature is not the key.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">A byte-level comparison of RSA, elliptic-curve, pairing-based and post-quantum signatures shows when recurring signature traffic overtakes key provisioning and storage.<\/p>\r\n                                <div class=\"nlabs-article-date\">Aug 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"seven containers, ranked by what you can prove. mobile key containers form a degradation ladder ordered by what an issuer can prove, not only by resistance to attack. below the policy cut line, fallback changes the custody model or prevents issuance rather than producing a weaker form of the same credential. key containers on mobile devices research analysis applied cryptography digital identity eudi wallet iso 18013-5 key attestation key management secure enclave strongbox tee verifiable credentials\"\r\n                            data-series=\"key-containers-on-mobile-devices\"\r\n                            data-category=\"research\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography digital-identity eudi-wallet iso-18013-5 key-attestation key-management secure-enclave strongbox tee verifiable-credentials\"\r\n                            data-part=\"3\"\r\n                            data-date=\"1786096800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/seven-containers-ranked-by-what-you-can-prove\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"480\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-31-seven-containers-768x480.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Seven glass, metal and ceramic containers arranged in a descending line with a wide gap before the final two on a pale laboratory surface.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Key Containers on Mobile Devices \u00b7 Part 3<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/seven-containers-ranked-by-what-you-can-prove\/\">Seven containers, ranked by what you can prove.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Mobile key containers form a degradation ladder ordered by what an issuer can prove, not only by resistance to attack. Below the policy cut&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Aug 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the certificate has two lists. android key attestation records a key&#039;s security level and separates authorizations enforced by hardware from those enforced by software. a verifier must validate the certificate chain, revocation status, boot state and the specific list containing every relied-upon constraint. key containers on mobile devices research primer android keystore applied cryptography asn.1 authentication digital identity key attestation key management keymint remote key provisioning secure hardware verifiable credentials x.509\"\r\n                            data-series=\"key-containers-on-mobile-devices\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"android-keystore applied-cryptography asn-1 authentication digital-identity key-attestation key-management keymint remote-key-provisioning secure-hardware verifiable-credentials x-509\"\r\n                            data-part=\"2\"\r\n                            data-date=\"1785664800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-certificate-has-two-lists\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"480\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-30-two-lists-768x480.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Two parallel metal and ceramic trays holding ordered blue and coral tokens beneath a translucent glass plate on a pale laboratory surface.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Key Containers on Mobile Devices \u00b7 Part 2<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-certificate-has-two-lists\/\">The certificate has two lists.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Android key attestation records a key&#039;s security level and separates authorizations enforced by hardware from those enforced by software. A verifier must validate the&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Aug 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"what &#8220;hardware-backed&#8221; means on android. android exposes software, tee-backed and strongbox-backed keys through one keystore api. the effective security level, mandated algorithm set and available attestation evidence vary by device and release. key containers on mobile devices research primer algorithms &amp; primitives android keystore applied cryptography key attestation key management keymint ml-dsa secure hardware strongbox tee verifiable credentials\"\r\n                            data-series=\"key-containers-on-mobile-devices\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives android-keystore applied-cryptography key-attestation key-management keymint ml-dsa secure-hardware strongbox tee verifiable-credentials\"\r\n                            data-part=\"1\"\r\n                            data-date=\"1785146400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/what-hardware-backed-means-on-android\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"480\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-29-hardware-backed-768x480.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Three compact containers of translucent glass, matte ceramic and machined metal arranged on a pale laboratory surface.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Key Containers on Mobile Devices \u00b7 Part 1<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/what-hardware-backed-means-on-android\/\">What &#8220;hardware-backed&#8221; means on Android.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Android exposes software, TEE-backed and StrongBox-backed keys through one keystore API. The effective security level, mandated algorithm set and available attestation evidence vary by&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Jul 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"colour buys capacity in exchange for illumination. polychrome barcodes can multiply payload density, but they exchange binary contrast for dependence on inks, cameras and uncontrolled light. biometrics in 2d barcodes research analysis applied cryptography\"\r\n                            data-series=\"biometrics-in-2d-barcodes\"\r\n                            data-category=\"research\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography\"\r\n                            data-part=\"3\"\r\n                            data-date=\"1784714400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/colour-buys-capacity-in-exchange-for-illumination\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-06-colour-buys-capacity-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Three groups of coloured matrix swatches observed under neutral, warm and cool laboratory illumination.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Biometrics in 2D Barcodes \u00b7 Part 3<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/colour-buys-capacity-in-exchange-for-illumination\/\">Colour buys capacity in exchange for illumination.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Polychrome barcodes can multiply payload density, but they exchange binary contrast for dependence on inks, cameras and uncontrolled light.<\/p>\r\n                                <div class=\"nlabs-article-date\">Jul 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"what survives the print, the scan and the phone. error correction can recover exact codewords from a damaged symbol. it cannot recover biometric detail removed before the credential was printed. biometrics in 2d barcodes research analysis applied cryptography digital identity verifiable credentials\"\r\n                            data-series=\"biometrics-in-2d-barcodes\"\r\n                            data-category=\"research\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography digital-identity verifiable-credentials\"\r\n                            data-part=\"2\"\r\n                            data-date=\"1784282400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/what-survives-the-print-the-scan-and-the-phone\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-05-what-survives-the-print-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A worn abstract matrix code specimen under laboratory inspection, with phone camera lenses softly out of focus.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Biometrics in 2D Barcodes \u00b7 Part 2<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/what-survives-the-print-the-scan-and-the-phone\/\">What survives the print, the scan and the phone.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Error correction can recover exact codewords from a damaged symbol. It cannot recover biometric detail removed before the credential was printed.<\/p>\r\n                                <div class=\"nlabs-article-date\">Jul 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"a face fits in 960 bytes. a signed qr can carry an offline face credential, but signature, encoding and card geometry leave roughly one kilobyte for the image. biometrics in 2d barcodes research analysis algorithms &amp; primitives applied cryptography digital identity verifiable credentials\"\r\n                            data-series=\"biometrics-in-2d-barcodes\"\r\n                            data-category=\"research\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography digital-identity verifiable-credentials\"\r\n                            data-part=\"1\"\r\n                            data-date=\"1783764000\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/a-face-fits-in-960-bytes\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-04-a-face-fits-in-960-bytes-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A tiny anonymous portrait on translucent film viewed through a precision magnifier on a pale laboratory table.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Biometrics in 2D Barcodes \u00b7 Part 1<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/a-face-fits-in-960-bytes\/\">A face fits in 960 bytes.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">A signed QR can carry an offline face credential, but signature, encoding and card geometry leave roughly one kilobyte for the image.<\/p>\r\n                                <div class=\"nlabs-article-date\">Jul 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"sms otp is now a restricted authenticator. the hard part is what replaces it. leaving sms removes the telephony channel, but phishing resistance depends on origin binding and on every recovery path that can create a session. authentication ceremonies research primer applied cryptography authentication\"\r\n                            data-series=\"authentication-ceremonies\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography authentication\"\r\n                            data-part=\"2\"\r\n                            data-date=\"1783332000\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/sms-otp-is-now-a-restricted-authenticator\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-08-sms-otp-restricted-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A feature phone, modern smartphone and hardware security key connected by a pale migration ribbon.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Authentication Ceremonies \u00b7 Part 2<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/sms-otp-is-now-a-restricted-authenticator\/\">SMS OTP is now a restricted authenticator. The hard part is what replaces it.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Leaving SMS removes the telephony channel, but phishing resistance depends on origin binding and on every recovery path that can create a session.<\/p>\r\n                                <div class=\"nlabs-article-date\">Jul 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"six digits are not the authentication ceremony. an otp output is short and temporary. its real security depends on seed custody, moving-factor state, verification policy, session binding and recovery. authentication ceremonies research primer applied cryptography authentication key management\"\r\n                            data-series=\"authentication-ceremonies\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography authentication key-management\"\r\n                            data-part=\"1\"\r\n                            data-date=\"1782900000\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/six-digits-are-not-the-authentication-ceremony\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-one-time-passwords-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A mechanical six-digit authenticator connected to a time dial, counter and separate verifier.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Authentication Ceremonies \u00b7 Part 1<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/six-digits-are-not-the-authentication-ceremony\/\">Six digits are not the authentication ceremony.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">An OTP output is short and temporary. Its real security depends on seed custody, moving-factor state, verification policy, session binding and recovery.<\/p>\r\n                                <div class=\"nlabs-article-date\">Jul 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the verifier and the parser disagree. signature verification fails as a security boundary when the verifier and the application resolve different meanings from the same document. signed bytes and parser differentials research primer algorithms &amp; primitives applied cryptography digital identity protocols\"\r\n                            data-series=\"signed-bytes-and-parser-differentials\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography digital-identity protocols\"\r\n                            data-part=\"2\"\r\n                            data-date=\"1782468000\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-verifier-and-the-parser-disagree\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-09-verifier-and-parser-disagree-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"One translucent sheet passing through two metal frames that reveal different blue and red geometric regions.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Signed Bytes and Parser Differentials \u00b7 Part 2<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-verifier-and-the-parser-disagree\/\">The verifier and the parser disagree.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Signature verification fails as a security boundary when the verifier and the application resolve different meanings from the same document.<\/p>\r\n                                <div class=\"nlabs-article-date\">Jun 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"signatures are over bytes, not meaning. two messages can express the same data and still produce different signatures. verification begins with the exact bytes a protocol chooses to protect. signed bytes and parser differentials research primer algorithms &amp; primitives applied cryptography protocols\"\r\n                            data-series=\"signed-bytes-and-parser-differentials\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography protocols\"\r\n                            data-part=\"1\"\r\n                            data-date=\"1781949600\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/signatures-are-over-bytes-not-meaning\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"261\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/RSA_en_una_imagen-768x261.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Several metal rings encircle different byte representations on a dark technical surface.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Signed Bytes and Parser Differentials \u00b7 Part 1<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/signatures-are-over-bytes-not-meaning\/\">Signatures are over bytes, not meaning.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Two messages can express the same data and still produce different signatures. Verification begins with the exact bytes a protocol chooses to protect.<\/p>\r\n                                <div class=\"nlabs-article-date\">Jun 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"audit the attributes, not the datasheet. pkcs #11 key policy is expressed through attributes and mechanisms inside the token. an inventory can reveal permissions that a product datasheet cannot. pkcs #11 key policy research analysis applied cryptography key management\"\r\n                            data-series=\"pkcs-11-key-policy\"\r\n                            data-category=\"research\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography key-management\"\r\n                            data-part=\"2\"\r\n                            data-date=\"1781517600\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/audit-the-attributes-not-the-datasheet\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-07-audit-the-attributes-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Machined metal and translucent policy tokens with abstract switches arranged on white graph paper.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">PKCS #11 Key Policy \u00b7 Part 2<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/audit-the-attributes-not-the-datasheet\/\">Audit the attributes, not the datasheet.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">PKCS #11 key policy is expressed through attributes and mechanisms inside the token. An inventory can reveal permissions that a product datasheet cannot.<\/p>\r\n                                <div class=\"nlabs-article-date\">Jun 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the handle is not the key. pkcs #11 gives applications a common view of cryptographic devices. the key&#039;s policy, lifecycle and operational meaning still depend on what lies behind the handle. pkcs #11 key policy research primer algorithms &amp; primitives applied cryptography key management\"\r\n                            data-series=\"pkcs-11-key-policy\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography key-management\"\r\n                            data-part=\"1\"\r\n                            data-date=\"1781085600\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-handle-is-not-the-key\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-pkcs11-handle-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Translucent handles entering an opaque cryptographic module, representing the PKCS #11 object boundary.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">PKCS #11 Key Policy \u00b7 Part 1<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-handle-is-not-the-key\/\">The handle is not the key.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">PKCS #11 gives applications a common view of cryptographic devices. The key&#039;s policy, lifecycle and operational meaning still depend on what lies behind the&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Jun 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"entropy arrives late. correct algorithms can still generate related keys when identical devices ask for randomness before their environments have diverged. research primer algorithms &amp; primitives applied cryptography key management\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography key-management\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1780653600\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/entropy-arrives-late\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-27-entropy-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Identical embedded devices hold repeating white beads while varied glass beads begin entering the final unit.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/entropy-arrives-late\/\">Entropy arrives late.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Correct algorithms can still generate related keys when identical devices ask for randomness before their environments have diverged.<\/p>\r\n                                <div class=\"nlabs-article-date\">Jun 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"twenty-six years from break to scheduled retirement. sha-1&#039;s long retirement measures inventory, artifact lifetime and the unreachable tail of deployed systems more than cryptanalysis. research analysis applied cryptography cryptographic transition\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography cryptographic-transition\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1780135200\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/twenty-six-years-from-break-to-scheduled-retirement\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-28-sha1-transition-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A long sequence of legacy metal and glass layers approaches a clean blue terminal marker.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/twenty-six-years-from-break-to-scheduled-retirement\/\">Twenty-six years from break to scheduled retirement.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">SHA-1&#039;s long retirement measures inventory, artifact lifetime and the unreachable tail of deployed systems more than cryptanalysis.<\/p>\r\n                                <div class=\"nlabs-article-date\">May 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the handshake has a budget of fourteen kilobytes. post-quantum authentication can cross transport limits before application data begins. the real budget is measured in bytes, flights, fragments and buffers. research analysis applied cryptography authentication post-quantum cryptography protocols secure hardware\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography authentication post-quantum protocols secure-hardware\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1779703200\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-handshake-has-a-budget-of-fourteen-kilobytes\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-26-handshake-budget-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Translucent authentication layers and a blue data ribbon passing through a narrow metal transport boundary.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-handshake-has-a-budget-of-fourteen-kilobytes\/\">The handshake has a budget of fourteen kilobytes.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Post-quantum authentication can cross transport limits before application data begins. The real budget is measured in bytes, flights, fragments and buffers.<\/p>\r\n                                <div class=\"nlabs-article-date\">May 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"a random output can carry a proof. a verifiable random function produces a unique, random-looking output and evidence anyone can check. it proves origin and uniqueness, not fairness in deciding which outputs are revealed. research primer algorithms &amp; primitives applied cryptography verifiable credentials\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography verifiable-credentials\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1779271200\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/a-random-output-can-carry-a-proof\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-25-vrf-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A faceted glass object produces one blue light point and a separate matching optical witness trace.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/a-random-output-can-carry-a-proof\/\">A random output can carry a proof.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">A verifiable random function produces a unique, random-looking output and evidence anyone can check. It proves origin and uniqueness, not fairness in deciding which&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">May 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"removing a member creates a new epoch. messaging layer security makes membership part of shared cryptographic state. a removal takes effect when the remaining group commits and derives a new epoch. research primer algorithms &amp; primitives applied cryptography protocols\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography protocols\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1778752800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/removing-a-member-creates-a-new-epoch\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-23-mls-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A balanced branching mobile has settled into a new arrangement after one ceramic node was removed.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/removing-a-member-creates-a-new-epoch\/\">Removing a member creates a new epoch.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Messaging Layer Security makes membership part of shared cryptographic state. A removal takes effect when the remaining group commits and derives a new epoch.<\/p>\r\n                                <div class=\"nlabs-article-date\">May 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the ciphertext does not say which mode produced it. format-preserving ciphertext carries no mode, key or tweak metadata. that convenience makes ff1 and ff3 migration difficult to scope from the data alone. format-preserving encryption research analysis algorithms &amp; primitives applied cryptography cryptographic transition key management\"\r\n                            data-series=\"format-preserving-encryption\"\r\n                            data-category=\"research\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography cryptographic-transition key-management\"\r\n                            data-part=\"2\"\r\n                            data-date=\"1778320800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-ciphertext-does-not-say-which-mode-produced-it\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-11-ciphertext-does-not-say-which-mode-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Identical white capsules held by different ceramic, metal and acrylic mechanisms on a pale measuring grid.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Format-Preserving Encryption \u00b7 Part 2<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-ciphertext-does-not-say-which-mode-produced-it\/\">The ciphertext does not say which mode produced it.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Format-preserving ciphertext carries no mode, key or tweak metadata. That convenience makes FF1 and FF3 migration difficult to scope from the data alone.<\/p>\r\n                                <div class=\"nlabs-article-date\">May 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"preserving the format preserves the leakage. format-preserving encryption keeps ciphertext compatible with narrow legacy fields. it also keeps domain size, length, structure and often equality visible. format-preserving encryption research primer algorithms &amp; primitives applied cryptography\"\r\n                            data-series=\"format-preserving-encryption\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography\"\r\n                            data-part=\"1\"\r\n                            data-date=\"1777888800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/preserving-the-format-preserves-the-leakage\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-24-fpe-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Identically sized archival forms retain their outer structure while their internal patterns change.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Format-Preserving Encryption \u00b7 Part 1<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/preserving-the-format-preserves-the-leakage\/\">Preserving the format preserves the leakage.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Format-preserving encryption keeps ciphertext compatible with narrow legacy fields. It also keeps domain size, length, structure and often equality visible.<\/p>\r\n                                <div class=\"nlabs-article-date\">May 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"a compact handshake still has a transcript. edhoc compresses authenticated key exchange into three concise cbor messages. its efficiency still depends on exact transcript bytes, credential profiles and state transitions. research primer applied cryptography digital identity key management protocols transport systems verifiable credentials\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography digital-identity key-management protocols transport-systems verifiable-credentials\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1777456800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/a-compact-handshake-still-has-a-transcript\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-22-edhoc-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Three small interlocking folded elements form a bridge carrying one continuous blue line.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/a-compact-handshake-still-has-a-transcript\/\">A compact handshake still has a transcript.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">EDHOC compresses authenticated key exchange into three concise CBOR messages. Its efficiency still depends on exact transcript bytes, credential profiles and state transitions.<\/p>\r\n                                <div class=\"nlabs-article-date\">Apr 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"two key exchanges still make one protocol. a hybrid key exchange combines a traditional contribution with a post-quantum one. its guarantee depends on the combiner, transcript, negotiation and every failure path around both components. research primer applied cryptography cryptographic transition key management post-quantum cryptography protocols secure hardware\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography cryptographic-transition key-management post-quantum protocols secure-hardware\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1776938400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/two-key-exchanges-still-make-one-protocol\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-20-hybrid-kem-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Blue natural fiber and coral technical filament are woven into one cord.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/two-key-exchanges-still-make-one-protocol\/\">Two key exchanges still make one protocol.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">A hybrid key exchange combines a traditional contribution with a post-quantum one. Its guarantee depends on the combiner, transcript, negotiation and every failure path&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Apr 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"sign the same message twice. repeated signing reveals whether output varies. across a population, repeated ecdsa values can expose nonce reuse, compromise and implementation anomalies. signature nonces research analysis algorithms &amp; primitives applied cryptography\"\r\n                            data-series=\"signature-nonces\"\r\n                            data-category=\"research\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography\"\r\n                            data-part=\"2\"\r\n                            data-date=\"1776506400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/sign-the-same-message-twice\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-10-sign-the-same-message-twice-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Two embossed paper strips emerging from a precision press while a magnifier reveals their surface detail.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Signature Nonces \u00b7 Part 2<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/sign-the-same-message-twice\/\">Sign the same message twice.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Repeated signing reveals whether output varies. Across a population, repeated ECDSA values can expose nonce reuse, compromise and implementation anomalies.<\/p>\r\n                                <div class=\"nlabs-article-date\">Apr 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"determinism is not a substitute for entropy. deterministic signing prevents catastrophic dependence on fresh random nonces. hedged signatures add new randomness to reduce repeated traces and faults without trusting that randomness completely. signature nonces research primer algorithms &amp; primitives applied cryptography\"\r\n                            data-series=\"signature-nonces\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography\"\r\n                            data-part=\"1\"\r\n                            data-date=\"1776074400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/determinism-is-not-a-substitute-for-entropy\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-21-hedged-signatures-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"One printing plate produces repeated geometric impressions with different fine pigment grain.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Signature Nonces \u00b7 Part 1<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/determinism-is-not-a-substitute-for-entropy\/\">Determinism is not a substitute for entropy.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Deterministic signing prevents catastrophic dependence on fresh random nonces. Hedged signatures add new randomness to reduce repeated traces and faults without trusting that randomness&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Apr 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"no intermediary should see the whole request. oblivious http partitions network identity and request contents between a relay and a gateway. padding, discovery, metadata and collusion still determine the privacy of the complete system. research primer applied cryptography digital identity privacy\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography digital-identity privacy\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1775642400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/no-intermediary-should-see-the-whole-request\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-17-ohttp-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A sealed white capsule moves through two separate translucent architectural chambers.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/no-intermediary-should-see-the-whole-request\/\">No intermediary should see the whole request.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Oblivious HTTP partitions network identity and request contents between a relay and a gateway. Padding, discovery, metadata and collusion still determine the privacy of&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Apr 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"evidence is not a verdict. remote attestation authenticates evidence about a target environment. endorsements, reference values and appraisal policy are what turn that evidence into a decision. research primer applied cryptography secure hardware verifiable credentials\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography secure-hardware verifiable-credentials\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1775124000\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/evidence-is-not-a-verdict\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-19-remote-attestation-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A sealed measurement specimen sits apart from its reference tile and decision marker.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/evidence-is-not-a-verdict\/\">Evidence is not a verdict.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Remote attestation authenticates evidence about a target environment. Endorsements, reference values and appraisal policy are what turn that evidence into a decision.<\/p>\r\n                                <div class=\"nlabs-article-date\">Apr 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"a key directory should be accountable. key transparency gives public-key distribution a consistent, auditable history. its proofs expose silent substitution only when clients, monitors or witnesses compare committed views. research primer applied cryptography key management verifiable credentials\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography key-management verifiable-credentials\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1774692000\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/a-key-directory-should-be-accountable\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-18-key-transparency-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A translucent archival ledger and an independent glass witness tile share the same patterned edge.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/a-key-directory-should-be-accountable\/\">A key directory should be accountable.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Key transparency gives public-key distribution a consistent, auditable history. Its proofs expose silent substitution only when clients, monitors or witnesses compare committed views.<\/p>\r\n                                <div class=\"nlabs-article-date\">Mar 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the aggregate can be known without collecting each value. vdafs let several aggregators verify and combine hidden client measurements. the result protects individual values only when non-collusion, batching and query policy hold. research primer applied cryptography privacy\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography privacy\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1774260000\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-aggregate-can-be-known-without-collecting-each-value\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-15-vdaf-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Blue and coral particles travel through separate transparent channels toward one luminous aggregate.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-aggregate-can-be-known-without-collecting-each-value\/\">The aggregate can be known without collecting each value.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">VDAFs let several aggregators verify and combine hidden client measurements. The result protects individual values only when non-collusion, batching and query policy hold.<\/p>\r\n                                <div class=\"nlabs-article-date\">Mar 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"authorization does not require identity. privacy pass separates token issuance from token redemption. the token can prove prior authorization without carrying a stable client identity. research primer applied cryptography authentication digital identity privacy\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography authentication digital-identity privacy\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1773741600\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/authorization-does-not-require-identity\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-16-privacy-pass-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Unmarked embossed tokens pass through a perforated screen from issuance to redemption.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/authorization-does-not-require-identity\/\">Authorization does not require identity.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Privacy Pass separates token issuance from token redemption. The token can prove prior authorization without carrying a stable client identity.<\/p>\r\n                                <div class=\"nlabs-article-date\">Mar 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the server does not need the password. opaque lets a client and server establish a mutually authenticated key without disclosing the password to the server. registration, recovery and server-key custody still define the system&#039;s real boundary. research primer applied cryptography authentication key management\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography authentication key-management\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1773309600\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-server-does-not-need-the-password\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-14-opaque-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A frosted glass envelope between separate coral and blue optical paths.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-server-does-not-need-the-password\/\">The server does not need the password.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">OPAQUE lets a client and server establish a mutually authenticated key without disclosing the password to the server. Registration, recovery and server-key custody still&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Mar 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the signature is ordinary. the ceremony is not. frost turns distributed authority into one ordinary schnorr signature. the difficult security work remains in share generation, nonce state, participant coordination and recovery. research primer algorithms &amp; primitives applied cryptography\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1772877600\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-signature-is-ordinary-the-ceremony-is-not\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-13-frost-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Several ceramic and metal components arranged around one precision press that produces a single impression.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-signature-is-ordinary-the-ceremony-is-not\/\">The signature is ordinary. The ceremony is not.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">FROST turns distributed authority into one ordinary Schnorr signature. The difficult security work remains in share generation, nonce state, participant coordination and recovery.<\/p>\r\n                                <div class=\"nlabs-article-date\">Mar 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the statement must enter the hash. a zero-knowledge proof can verify correctly while authorizing the wrong statement. fiat-shamir security begins with the exact public instance, transcript order and domain separation absorbed by the hash. research primer algorithms &amp; primitives applied cryptography authentication protocols verifiable credentials\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography authentication protocols verifiable-credentials\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1772445600\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-statement-must-enter-the-hash\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-12-fiat-shamir-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A sequence of geometric paper elements joined by a blue line, with one outlined element omitted from the sequence.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-statement-must-enter-the-hash\/\">The statement must enter the hash.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">A zero-knowledge proof can verify correctly while authorizing the wrong statement. Fiat-Shamir security begins with the exact public instance, transcript order and domain separation&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Mar 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"selective disclosure is not unlinkability. bbs signatures support selective disclosure and randomized derived proofs. unlinkability still depends on disclosed values, proof context, revocation and the surrounding protocol. research primer algorithms &amp; primitives applied cryptography privacy protocols verifiable credentials\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography privacy protocols verifiable-credentials\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1771927200\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/selective-disclosure-is-not-unlinkability\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-research-11-bbs-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Layered translucent sheets with selected windows revealing only parts of an underlying record.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/selective-disclosure-is-not-unlinkability\/\">Selective disclosure is not unlinkability.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">BBS signatures support selective disclosure and randomized derived proofs. Unlinkability still depends on disclosed values, proof context, revocation and the surrounding protocol.<\/p>\r\n                                <div class=\"nlabs-article-date\">Feb 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"a blockchain can preserve a claim. it cannot make it true. hashes, signatures and consensus can preserve an ordered claim. they cannot establish the external truth, authority or intent behind it. research primer algorithms &amp; primitives applied cryptography\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1771495200\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/a-blockchain-can-preserve-a-claim-it-cannot-make-it-true\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-blockchain-claim-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A physical specimen scanned into linked glass records, separating external reality from its preserved digital claim.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/a-blockchain-can-preserve-a-claim-it-cannot-make-it-true\/\">A blockchain can preserve a claim. It cannot make it true.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Hashes, signatures and consensus can preserve an ordered claim. They cannot establish the external truth, authority or intent behind it.<\/p>\r\n                                <div class=\"nlabs-article-date\">Feb 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"toward an open cryptographic workbench. cryptographic tools explain algorithms, transform data and visualise workflows. a protocol workbench could connect those strengths while keeping exact bytes visible. featured research primer algorithms &amp; primitives applied cryptography protocols\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"featured research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography protocols\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1771063200\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/toward-an-open-cryptographic-workbench\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"261\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/electron_microscope-768x261.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A microscope examines the circuitry of a gold integrated circuit on a laboratory stage.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Featured<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/toward-an-open-cryptographic-workbench\/\">Toward an open cryptographic workbench.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Cryptographic tools explain algorithms, transform data and visualise workflows. A protocol workbench could connect those strengths while keeping exact bytes visible.<\/p>\r\n                                <div class=\"nlabs-article-date\">Feb 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"a secure key cannot make a photographed qr fresh. hardware-backed signing can prove which mobile key produced an offline qr. it cannot, by itself, prove that the image was created for this verifier, this place or this moment. offline visual exchange in practice analysis applied cryptography digital identity mobile security protocols qr codes secure hardware\"\r\n                            data-series=\"offline-visual-exchange\"\r\n                            data-category=\"in-practice\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography digital-identity mobile-security protocols qr-codes secure-hardware\"\r\n                            data-part=\"3\"\r\n                            data-date=\"1770686400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/secure-key-cannot-make-photographed-qr-fresh\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"432\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/visual-replay-checkpoint-768x432.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Phone displaying a QR code beside a rugged verifier and a small hardware token on a sunlit inspection desk\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Offline Visual Exchange \u00b7 Part 3<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/secure-key-cannot-make-photographed-qr-fresh\/\">A secure key cannot make a photographed QR fresh.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Hardware-backed signing can prove which mobile key produced an offline QR. It cannot, by itself, prove that the image was created for this verifier,&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Feb 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"three hundred milliseconds is an operating envelope. encrypted qr decoding is governed less by cipher choice than by symbol density, module sampling, optics, motion, exposure and the scanner pipeline. a byte budget and a declared test envelope make a sub-second target measurable. offline visual exchange in practice analysis applied cryptography computer vision mobile systems protocols qr codes\"\r\n                            data-series=\"offline-visual-exchange\"\r\n                            data-category=\"in-practice\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography computer-vision mobile-systems protocols qr-codes\"\r\n                            data-part=\"2\"\r\n                            data-date=\"1770685800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/three-hundred-milliseconds-is-an-operating-envelope\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"432\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/qr-optical-decoding-768x432.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Smartphone with a dense QR code crossing an industrial scanner focal plane with natural motion blur\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Offline Visual Exchange \u00b7 Part 2<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/three-hundred-milliseconds-is-an-operating-envelope\/\">Three hundred milliseconds is an operating envelope.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Encrypted QR decoding is governed less by cipher choice than by symbol density, module sampling, optics, motion, exposure and the scanner pipeline. A byte&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Feb 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"a one-way qr can establish a key, but not a conversation. an ephemeral x25519 key can protect an offline qr for a pre-provisioned verifier, but freshness, replay resistance and sender authentication still require explicit protocol state. offline visual exchange in practice analysis applied cryptography key management offline systems protocols qr codes\"\r\n                            data-series=\"offline-visual-exchange\"\r\n                            data-category=\"in-practice\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography key-management offline-systems protocols qr-codes\"\r\n                            data-part=\"1\"\r\n                            data-date=\"1770685200\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/one-way-qr-key-establishment\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"432\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/offline-visual-0rtt-768x432.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Two hands holding smartphones face to face as one displays a QR code and the other scans it in warm daylight\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Offline Visual Exchange \u00b7 Part 1<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/one-way-qr-key-establishment\/\">A one-way QR can establish a key, but not a conversation.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">An ephemeral X25519 key can protect an offline QR for a pre-provisioned verifier, but freshness, replay resistance and sender authentication still require explicit protocol&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Feb 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"what post-quantum migration costs at the edge. post-quantum algorithms change the size and shape of protocols. at the edge, bytes, memory, latency and update paths become part of the cryptographic decision. featured research primer algorithms &amp; primitives applied cryptography cryptographic transition post-quantum cryptography protocols\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"featured research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography cryptographic-transition post-quantum protocols\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1770631200\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/what-post-quantum-migration-costs-at-the-edge\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"250\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs_PQC_Lattice-based-cryptography-768x250.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Transparent lattice-like channels interlock over a dark geometric base.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Featured<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/what-post-quantum-migration-costs-at-the-edge\/\">What post-quantum migration costs at the edge.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Post-quantum algorithms change the size and shape of protocols. At the edge, bytes, memory, latency and update paths become part of the cryptographic decision.<\/p>\r\n                                <div class=\"nlabs-article-date\">Feb 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"algorithm agility is an operational property. supporting a second algorithm is easy. moving a running system from one cryptographic regime to another is the real test of agility. research primer algorithms &amp; primitives applied cryptography cryptographic transition\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography cryptographic-transition\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1770112800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/algorithm-agility-is-an-operational-property\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs_Crypto_Agility_2-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A whiteboard maps algorithm migration through discover, introduce, coexist, prefer and retire.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/algorithm-agility-is-an-operational-property\/\">Algorithm agility is an operational property.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Supporting a second algorithm is easy. Moving a running system from one cryptographic regime to another is the real test of agility.<\/p>\r\n                                <div class=\"nlabs-article-date\">Feb 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the transcript is the protocol. a secure session depends on more than fresh keys. the negotiation, participants and intended operation must be bound to the same cryptographic result. research primer algorithms &amp; primitives applied cryptography authentication key management protocols\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography authentication key-management protocols\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1769680800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-transcript-is-the-protocol\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"267\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs_transcript_protocol_2-768x267.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Transparent protocol cards for roles, nonce, negotiation, ephemeral key and request are linked to a transcript hash.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-transcript-is-the-protocol\/\">The transcript is the protocol.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">A secure session depends on more than fresh keys. The negotiation, participants and intended operation must be bound to the same cryptographic result.<\/p>\r\n                                <div class=\"nlabs-article-date\">Jan 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"a nonce is not a footnote. a secure cipher can fail when nonce state does not survive writers, restarts and rollbacks. uniqueness is a property of the operating system around the primitive. research primer algorithms &amp; primitives applied cryptography\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1769248800\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/a-nonce-is-not-a-footnote\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-aead-nonce-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Two mechanical counter sequences with a repeated blue position, representing nonce reuse across encryptors.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/a-nonce-is-not-a-footnote\/\">A nonce is not a footnote.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">A secure cipher can fail when nonce state does not survive writers, restarts and rollbacks. Uniqueness is a property of the operating system around&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Jan 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the curve is only part of the choice. p-256, secp256k1, ed25519 and x25519 name different layers, purposes and ecosystems. selecting a curve never selects the complete construction. research primer algorithms &amp; primitives applied cryptography\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"research\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1768730400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-curve-is-only-part-of-the-choice\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"269\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/nlabs-elliptic-curves-768x269.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Four distinct precision curves crossing a technical surface, representing non-interchangeable elliptic-curve constructions.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Research<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-curve-is-only-part-of-the-choice\/\">The curve is only part of the choice.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">P-256, secp256k1, Ed25519 and X25519 name different layers, purposes and ecosystems. Selecting a curve never selects the complete construction.<\/p>\r\n                                <div class=\"nlabs-article-date\">Jan 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"putting the trust boundary beside the reader. a sam can keep master keys out of reader firmware and perform card protocols locally. the security result still depends on permissions, host integration and lifecycle. in practice primer applied cryptography key management protocols secure hardware transport systems\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"in-practice\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography key-management protocols secure-hardware transport-systems\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1768298400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/putting-the-trust-boundary-beside-the-reader\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"237\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/mifare_sam_neodata_labs-768x237.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A hand holds a MIFARE SAM AV3 card against a pale neutral background.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">In Practice<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/putting-the-trust-boundary-beside-the-reader\/\">Putting the trust boundary beside the reader.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">A SAM can keep master keys out of reader firmware and perform card protocols locally. The security result still depends on permissions, host integration&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Jan 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"a card migration is a state machine. moving a live fare system from mifare classic to mifare plus is not a card replacement exercise. it is a controlled transition across credentials, readers, keys and operational states. in practice analysis applied cryptography cryptographic transition digital identity key management transport systems verifiable credentials\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"in-practice\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography cryptographic-transition digital-identity key-management transport-systems verifiable-credentials\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1767866400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/a-card-migration-is-a-state-machine\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"253\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/Sin-titulo-768x253.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A hand presents an STM transit card to a circular red contactless validator.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">In Practice<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/a-card-migration-is-a-state-machine\/\">A card migration is a state machine.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Moving a live fare system from MIFARE Classic to MIFARE Plus is not a card replacement exercise. It is a controlled transition across credentials,&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Jan 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"designing a fare token for intermittent connectivity. when balance and fare rules remain in a central account, a qr code is not the ticket. it is a compact claim whose meaning depends on connectivity, trust and replay control. featured in practice analysis applied cryptography transport systems\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"featured in-practice\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography transport-systems\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1767434400\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/designing-a-fare-token-for-intermittent-connectivity\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"302\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/17255-768x302.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A passenger presents a smartphone fare token to a validator inside a bus.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">Featured<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/designing-a-fare-token-for-intermittent-connectivity\/\">Designing a fare token for intermittent connectivity.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">When balance and fare rules remain in a central account, a QR code is not the ticket. It is a compact claim whose meaning&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Jan 2026<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the sim as a cryptographic computer. long before the secure element became a general platform, sim and uicc applets provided a small governed environment for keys, authentication and digital signatures. in practice primer algorithms &amp; primitives applied cryptography authentication key management secure hardware\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"in-practice\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography authentication key-management secure-hardware\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1766916000\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-sim-as-a-cryptographic-computer\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"200\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/GD_Triple_SIM-1900x700_c-768x200.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A SIM chip is held by precision tweezers against a dark laboratory background.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">In Practice<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-sim-as-a-cryptographic-computer\/\">The SIM as a cryptographic computer.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">Long before the secure element became a general platform, SIM and UICC applets provided a small governed environment for keys, authentication and digital signatures.<\/p>\r\n                                <div class=\"nlabs-article-date\">Dec 2025<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"the token is the easy part. a token can replace a sensitive value. the difficult work is defining what the replacement means, who may reverse it and how the system behaves over time. in practice analysis applied cryptography cryptographic transition\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"in-practice\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"applied-cryptography cryptographic-transition\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1766484000\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/the-token-is-the-easy-part\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"195\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/20216-768x195.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A payment card with an EMV chip rests beside a numeric keypad.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">In Practice<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/the-token-is-the-easy-part\/\">The token is the easy part.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">A token can replace a sensitive value. The difficult work is defining what the replacement means, who may reverse it and how the system&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Dec 2025<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"keys without a secure boundary. when cryptographic operations must run without an hsm, software can reduce the exposure of key material\u2014but it cannot make a hostile host trustworthy. in practice analysis algorithms &amp; primitives applied cryptography key management secure hardware\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"in-practice\"\r\n                            data-type=\"analysis\"\r\n                            data-tag=\"algorithms-primitives applied-cryptography key-management secure-hardware\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1766052000\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/keys-without-a-secure-boundary\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"276\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/7813-768x276.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"Shattered glass fragments lie across a vivid coral surface.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">In Practice<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Analysis<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/keys-without-a-secure-boundary\/\">Keys without a secure boundary.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">When cryptographic operations must run without an HSM, software can reduce the exposure of key material\u2014but it cannot make a hostile host trustworthy.<\/p>\r\n                                <div class=\"nlabs-article-date\">Dec 2025<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                                                    <article\r\n                            class=\"nlabs-article-card\"\r\n                            data-search=\"when a qr code was not a format. during the pandemic, visually similar qr codes carried incompatible data models, encodings and trust assumptions. a contribution from uruguay to pathcheck\u2019s universal verifier made that fragmentation tangible. in practice primer applied cryptography digital identity transport systems\"\r\n                            data-series=\"standalone\"\r\n                            data-category=\"in-practice\"\r\n                            data-type=\"primer\"\r\n                            data-tag=\"applied-cryptography digital-identity transport-systems\"\r\n                            data-part=\"0\"\r\n                            data-date=\"1765620000\"\r\n                        >\r\n                                                            <a class=\"nlabs-article-image\" href=\"https:\/\/neodata.com.uy\/labs\/when-a-qr-code-was-not-a-format\/\" tabindex=\"-1\" aria-hidden=\"true\">\r\n                                    <img decoding=\"async\" width=\"768\" height=\"184\" src=\"https:\/\/neodata.com.uy\/labs\/wp-content\/uploads\/2026\/09\/secure_qr_code_nlabs_1-768x184.webp\" class=\"attachment-medium_large size-medium_large wp-post-image\" alt=\"A hand holds a smartphone displaying a health QR code while another person stands out of focus.\" loading=\"lazy\" \/>                                <\/a>\r\n                                                        <div class=\"nlabs-article-body\">\r\n                                <div class=\"nlabs-article-meta\">\r\n                                                                            <span class=\"nlabs-chip\">In Practice<\/span>\r\n                                                                                                                <span class=\"nlabs-chip nlabs-chip-muted\">Primer<\/span>\r\n                                                                    <\/div>\r\n                                <h3><a href=\"https:\/\/neodata.com.uy\/labs\/when-a-qr-code-was-not-a-format\/\">When a QR code was not a format.<\/a><\/h3>\r\n                                <p class=\"nlabs-article-excerpt\">During the pandemic, visually similar QR codes carried incompatible data models, encodings and trust assumptions. A contribution from Uruguay to PathCheck\u2019s Universal Verifier made&hellip;<\/p>\r\n                                <div class=\"nlabs-article-date\">Dec 2025<\/div>\r\n                            <\/div>\r\n                        <\/article>\r\n                                    <\/div>\r\n                <div class=\"nlabs-empty\">No articles match this combination. Try removing one of the filters.<\/div>\r\n                <button class=\"nlabs-load-more\" type=\"button\">Show more articles<\/button>\r\n            <\/div>\r\n        <\/section>\r\n\r\n        <script>\r\n        (function () {\r\n            var root = document.currentScript.closest('.nlabs-series-explorer');\r\n            if (!root) return;\r\n\r\n            var grid = root.querySelector('.nlabs-article-grid');\r\n            var cards = Array.prototype.slice.call(root.querySelectorAll('.nlabs-article-card'));\r\n            var search = root.querySelector('#nlabs-filter-search');\r\n            var series = root.querySelector('#nlabs-filter-series');\r\n            var category = root.querySelector('#nlabs-filter-category');\r\n            var type = root.querySelector('#nlabs-filter-type');\r\n            var tag = root.querySelector('#nlabs-filter-tag');\r\n            var sort = root.querySelector('#nlabs-filter-sort');\r\n            var reset = root.querySelector('.nlabs-filter-reset');\r\n            var more = root.querySelector('.nlabs-load-more');\r\n            var count = root.querySelector('.nlabs-result-count');\r\n            var context = root.querySelector('.nlabs-active-context');\r\n            var empty = root.querySelector('.nlabs-empty');\r\n            var pageSize = parseInt(root.getAttribute('data-page-size'), 10) || 12;\r\n            var limit = pageSize;\r\n\r\n            function tokens(card, name) {\r\n                return (card.getAttribute('data-' + name) || '').split(\/\\s+\/).filter(Boolean);\r\n            }\r\n\r\n            function setFromUrl() {\r\n                var params = new URLSearchParams(window.location.search);\r\n                var map = { series: series, category: category, type: type, tag: tag, sort: sort };\r\n                Object.keys(map).forEach(function (key) {\r\n                    if (params.has(key) && map[key].querySelector('option[value=\"' + CSS.escape(params.get(key)) + '\"]')) {\r\n                        map[key].value = params.get(key);\r\n                    }\r\n                });\r\n                if (params.has('q')) search.value = params.get('q');\r\n            }\r\n\r\n            function syncUrl() {\r\n                var params = new URLSearchParams();\r\n                if (search.value.trim()) params.set('q', search.value.trim());\r\n                if (series.value) params.set('series', series.value);\r\n                if (category.value) params.set('category', category.value);\r\n                if (type.value) params.set('type', type.value);\r\n                if (tag.value) params.set('tag', tag.value);\r\n                if (sort.value && sort.value !== 'default') params.set('sort', sort.value);\r\n                var query = params.toString();\r\n                history.replaceState(null, '', window.location.pathname + (query ? '?' + query : '') + '#browse-articles');\r\n            }\r\n\r\n            function selectedLabel(select) {\r\n                return select.value ? select.options[select.selectedIndex].text : '';\r\n            }\r\n\r\n            function applyFilters(updateUrl) {\r\n                var q = search.value.trim().toLowerCase();\r\n                var matches = cards.filter(function (card) {\r\n                    return (!q || (card.getAttribute('data-search') || '').indexOf(q) !== -1) &&\r\n                        (!series.value || card.getAttribute('data-series') === series.value) &&\r\n                        (!category.value || tokens(card, 'category').indexOf(category.value) !== -1) &&\r\n                        (!type.value || tokens(card, 'type').indexOf(type.value) !== -1) &&\r\n                        (!tag.value || tokens(card, 'tag').indexOf(tag.value) !== -1);\r\n                });\r\n\r\n                matches.sort(function (a, b) {\r\n                    if (sort.value === 'title') {\r\n                        return (a.querySelector('h3').textContent || '').localeCompare(b.querySelector('h3').textContent || '');\r\n                    }\r\n                    if (sort.value === 'oldest') {\r\n                        return (parseInt(a.getAttribute('data-date'), 10) || 0) - (parseInt(b.getAttribute('data-date'), 10) || 0);\r\n                    }\r\n                    if (sort.value === 'newest') {\r\n                        return (parseInt(b.getAttribute('data-date'), 10) || 0) - (parseInt(a.getAttribute('data-date'), 10) || 0);\r\n                    }\r\n                    if (series.value && series.value !== 'standalone') {\r\n                        return (parseInt(a.getAttribute('data-part'), 10) || 999) - (parseInt(b.getAttribute('data-part'), 10) || 999);\r\n                    }\r\n                    return (parseInt(b.getAttribute('data-date'), 10) || 0) - (parseInt(a.getAttribute('data-date'), 10) || 0);\r\n                });\r\n\r\n                cards.forEach(function (card) { card.hidden = true; });\r\n                matches.forEach(function (card, index) {\r\n                    grid.appendChild(card);\r\n                    card.hidden = index >= limit;\r\n                });\r\n\r\n                var shown = Math.min(limit, matches.length);\r\n                count.textContent = 'Showing ' + shown + ' of ' + matches.length + ' articles';\r\n                var labels = [selectedLabel(series), selectedLabel(category), selectedLabel(type), selectedLabel(tag)].filter(Boolean);\r\n                context.textContent = labels.join(' \u00b7 ');\r\n                empty.style.display = matches.length ? 'none' : 'block';\r\n                more.hidden = matches.length <= limit;\r\n                if (updateUrl) syncUrl();\r\n            }\r\n\r\n            [series, category, type, tag, sort].forEach(function (control) {\r\n                control.addEventListener('change', function () { limit = pageSize; applyFilters(true); });\r\n            });\r\n\r\n            var searchTimer;\r\n            search.addEventListener('input', function () {\r\n                window.clearTimeout(searchTimer);\r\n                searchTimer = window.setTimeout(function () { limit = pageSize; applyFilters(true); }, 160);\r\n            });\r\n\r\n            reset.addEventListener('click', function () {\r\n                search.value = '';\r\n                series.value = '';\r\n                category.value = '';\r\n                type.value = '';\r\n                tag.value = '';\r\n                sort.value = 'default';\r\n                limit = pageSize;\r\n                applyFilters(true);\r\n            });\r\n\r\n            more.addEventListener('click', function () { limit += pageSize; applyFilters(false); });\r\n\r\n            root.querySelectorAll('[data-series-target]').forEach(function (button) {\r\n                button.addEventListener('click', function () {\r\n                    series.value = button.getAttribute('data-series-target');\r\n                    category.value = '';\r\n                    type.value = '';\r\n                    tag.value = '';\r\n                    search.value = '';\r\n                    limit = pageSize;\r\n                    applyFilters(true);\r\n                    root.querySelector('#browse-articles').scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n                });\r\n            });\r\n\r\n            setFromUrl();\r\n            applyFilters(false);\r\n        }());\r\n        <\/script>\r\n    <\/div>\r\n    \n<\/div><\/div>\n<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-224830","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/neodata.com.uy\/labs\/wp-json\/wp\/v2\/pages\/224830","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/neodata.com.uy\/labs\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/neodata.com.uy\/labs\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/neodata.com.uy\/labs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/neodata.com.uy\/labs\/wp-json\/wp\/v2\/comments?post=224830"}],"version-history":[{"count":1,"href":"https:\/\/neodata.com.uy\/labs\/wp-json\/wp\/v2\/pages\/224830\/revisions"}],"predecessor-version":[{"id":225971,"href":"https:\/\/neodata.com.uy\/labs\/wp-json\/wp\/v2\/pages\/224830\/revisions\/225971"}],"wp:attachment":[{"href":"https:\/\/neodata.com.uy\/labs\/wp-json\/wp\/v2\/media?parent=224830"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}