Skip to content

encoding decision room

Hold HMAC encoding launch 14 days, gate on second incident

What this means

EXPERIMENT

Encoding opportunity review

On 2026-07-28 researchers disclosed that 24,650 internet-exposed BMCs returned pre-login IPMI password hashes out of 36,872 reachable on UDP/623, the same day Origin Energy reported a 900,000-customer breach and a Fortinet leak of 74,000 firewall credentials. The panel tied this to encoding drift: a single byte change at ingestion can rewrite downstream webhook signatures. Decision: run a 14-day encoding-trust experiment before any HMAC route activation.

Bottom line: Hold the HMAC encoding launch for 14 days; reopen only after a second independent originating event proves the encoding-trust market is not a one-day artifact.

Decision-ready plan

Project brief

Why now: The problem and its proof

On 2026-07-28 three independent disclosures landed within hours: 24,650 BMCs returned password hashes pre-login out of 36,872 reachable on UDP/623, the FortiBleed report exposed 74,000 Fortinet firewall credentials, and Origin Energy acknowledged a breach touching 900,000 customers. Encoding is the connective tissue across all three: a stray curly quote, BOM, or CJK normalization shift at ingestion can rewrite a webhook signature, turning a working integration into a 3 a.m. retry storm. Vendors are paying for the absence of that rumor, not the bytes themselves. We move now only because the cluster has not yet proven it survives week two.

What we decided: The smallest useful response

Decision: EXPERIMENT for 14 days. Confidence is mixed-low: three product and engineering members voted conditional, two voted oppose, one held a question. We will not activate the HMAC routing entry point until day fourteen. The kill criteria are explicit and any one of them reverses the call: no second independent originating disclosure beyond the 2026-07-28 BMC, FortiBleed, or Origin cluster; the 14-day qualified tool-start rate from nonusers stays under one percent; or any trace shows payload_hash_at_ingest diverging from encoded_payload_hash on the same trace ID without a paired alert that pages the encoding owner. If two of three trigger, we revert to WATCH and reassess at day 28. Disagreement the panel flagged: Vera argued seven days is enough to confirm a one-day artifact, Nolan argued partners are buying the absence of a rumor rather than a feature, and Tess insisted a single end-to-end trace with payload_hash_at_ingest, encoded_payload_hash, and signature_verdict is the falsifiable test.

How to deliver: Steps, reuse, and scope

Day 0 (2026-07-28): stand up the HMAC Generator entry point in shadow mode, route zero live traffic, instrument every call with payload_hash_at_ingest, encoded_payload_hash, and signature_verdict on a shared trace ID. Day 1-3: run three tricky-string probes (curly quotes, mixed CJK, zero-width joiner) through both Node.js JSON.stringify and PHP webhook receivers, log byte-level diffs, alert the encoding owner on any ingest/encoded divergence. Day 4-14: count qualified tool starts by source, with the explicit gate that nonusers must cross one percent or we revert to WATCH. Day 14 revisit: Theo reopens the meeting; if a second independent originating disclosure beyond 2026-07-28 has landed, promote to BUILD; otherwise stay in EXPERIMENT.

Existing Lizely tools

What today's tools already solve from this discussion
Lizely toolSolves from the discussion
HMAC GeneratorGenerate HMAC-SHA-256, HMAC-SHA-384, or HMAC-SHA-512 from exact UTF-8 or hexadecimal key and message bytes to expose ingest-side byte drift before webhook signatures fail downstream.

Open-source references

No verified open-source repository matched this delivery.

Who keeps it honest: Ownership and follow-ups

Theo Ashby owns the day-14 revisit and signs off any promotion from EXPERIMENT to BUILD. Tess Rowan owns the falsifiable trace: every webhook call must carry payload_hash_at_ingest, encoded_payload_hash, and signature_verdict on the same trace ID, and any divergence without a paging alert is a failed review. Nolan Reeve owns the 14-day qualified-tool-start count by source and the one-percent nonuser threshold; Ellis Pryce owns the partner-pain taxonomy and challenges Nora Blake if three distinct monetization moments collapse into one tidy headline. Vera Sinclair owns the originating-event watch and calls whether 2026-07-28 was a one-day artifact.

Who provides what

  • Vera SinclairTrend and Opportunity Analyst
  • Felix BrandtRendering and Discovery Specialist
  • Maeve CarverMonetization Strategy Lead
  • Nolan ReeveDistribution and Reach Lead
  • Nora BlakeOpportunity Discovery Lead
  • Ellis PryceFrontend Performance Engineer
  • Viktor SalzBackend Data Engineer
  • Tess RowanSite Reliability Engineer
  • Theo AshbyChief Executive

Evidence before opinion

Research brief

The meeting separates fresh T-1 signals from slower background evidence and names the assumptions the team tested.

T-1 evidence

Yesterday's signals

25 signals · 20 sources — view list

Context

Background references

No background reference was needed for this report.

Testable claims

Assumptions under test

This report did not record explicit assumptions.

Inside this meeting

Participants and assignments

9 people selected for this decision

  • Viktor Salz

    Backend Data Engineer

    Specialty: Backend data

    Task: Frame the fresh demand signal

  • Felix Brandt

    Rendering and Discovery Specialist

    Specialty: Rendering seo

    Task: Test the search and growth opportunity

  • Maeve Carver

    Monetization Strategy Lead

    Specialty: Monetization strategy

    Task: Test the search and growth opportunity

  • Nora Blake

    Opportunity Discovery Lead

    Specialty: Opportunity validation

    Task: Test the search and growth opportunity

  • Theo Ashby

    Chief Executive

    Specialty: Ceo decision

    Task: Ask the decision-blocking question

  • Tess Rowan

    Site Reliability Engineer

    Specialty: Sre observability

    Task: Answer the executive checkpoint

  • Ellis Pryce

    Frontend Performance Engineer

    Specialty: Frontend performance

    Task: Pressure-test evidence and assumptions

  • Nolan Reeve

    Distribution and Reach Lead

    Specialty: Distribution reach

    Task: Pressure-test evidence and assumptions

  • Vera Sinclair

    Trend and Opportunity Analyst

    Specialty: Trend timing

    Task: Pressure-test evidence and assumptions

Cross-functional meeting

Meeting thread

10 messages · replies preserved

  1. Signal brief

  2. Viktor Salz

    Backend Data Engineer
    #1Signal briefOpeningConcerned

    Good morning, everyone. Before we dive into today's agenda, I want to flag a pattern that came up across several sources we pulled yesterday, and it sits squarely in our encoding lane. One item described an e-invoicing API that claims to hide the BIS schemas, the access-point onboarding, and the schematron behind two simple JSON calls. Another piece walked through how SHA-1 and its larger variants compute a fixed-length digest from a variable-length message. And a third reported that exposed BMCs are handing out password hashes before any login is attempted. Different industries, but the same thread: somewhere in that boundary, an encoding step is treated as decorative rather than load-bearing. For our team, the practical consequence is that any encoding choice we delegate away today becomes an unverifiable claim about integrity tomorrow, so we have to decide which guarantees we will own and which we will accept on faith. I would like to spend the next few minutes pressure-testing how we model that responsibility in our current work. I'll lay out two or three specific points from the evidence, and I want to hear where you see risk or agreement. Let's start with what each of you read into these items.

    SourcesEvidence behind this discussion[1] technetexperts.com[2] racklify.com[3] e-invoice.be[4] comptiaexamprep.com[5] dev.to[6] dev.to[7] mosqueras.com[8] mojoauth.com[9] dev.to[10] mosqueras.com[11] gbhackers.com[12] dev.to[13] bleepingcomputer.com[14] helpnetsecurity.com[15] cybersecuritytimes.com[16] thehackernews.com[17] themagicriders.com[18] indiatimes.com[19] cloaked.com[20] particle.news[21] abijita.com[22] finder.com.au[23] firstpost.com[24] particle.news[25] prettycool.net

  3. Opportunity debate

  4. Felix Brandt

    Rendering and Discovery Specialist
    #2Opportunity debateReplyConcerned

    Reply to Viktor Salz, message #1

    Viktor, the SHA-1 write-up is the one I want to pull on, because it makes a clean load-bearing claim about variable input producing a fixed digest, and that promise only holds if the bytes the server actually signs match the bytes the client thinks it is sending. The concrete consequence for our encoding category is that a single character-set mismatch, say the client submits a smart quote and the API hashes its NFC normalized twin, produces a totally different digest while both sides remain technically correct, so signature failures look like tampering instead of transport. I would want a regression assertion that pins one known tricky string through full request serialization and compares the exact byte sequence the HMAC Generator computes against what our middleware signs, with no normalization step in between. That gives us a falsifiable HTML and header check rather than another hopeful log line.

  5. Maeve Carver

    Monetization Strategy Lead
    #3Opportunity debateReplyConcerned

    Reply to Felix Brandt, message #2

    Felix, your byte-sequence regression assertion is the right shape, and I want to attach a monetization consequence to it that the thread has not priced yet. Every signature mismatch that gets logged as possible tampering is a trust event, and trust events compress willingness to pay because the buyer cannot predict whether the tool will bill them for a request that never actually landed. If our encoding layer silently rewrites a smart quote to its NFC twin before HMAC, a paying integration partner sees a failed call, files a support ticket, and our evidence ledger for that account shows an avoided cost of zero even though the alternative was a working signature. The checkable observation I want pinned alongside yours is a side-byide test of three tricky strings, curly quotes, mixed CJK, and a zero-width joiner, where we record both the raw bytes the client submits and the normalized bytes the middleware signs, then charge the test plan against the package boundary so we know which tier a customer would have to buy to demand that guarantee.

  6. Nora Blake

    Opportunity Discovery Lead
    #4Opportunity debateReplyConcerned

    Reply to Maeve Carver, message #3

    Maeve, your trust-event framing lands, and I want to push on whether what you described is really one monetization opportunity or several competing ones hiding under the same headline. If paying partners bounce off a failed signature because our middleware rewrote a curly quote, that is one need: predictable billing on the bytes the client actually sent. If the same partner also hesitates because they cannot tell post-hoc whether a 5xx was their integration or our tamper flag, that is a different need: legible failure semantics. Treating both as one encoding feature risks building a normalization fix that ships, while the diagnostic gap keeps filing tickets and the willingness-to-pay compression you flagged does not lift. From what I have seen, encoding talk tends to mask the real desire, so I would want three recent behavioral moments where a paying integration partner either re-signed manually, downgraded tier, or paused a rollout, anchored to a concrete string and a concrete billable call, before we let any solution dominate the discussion.

  7. CEO checkpoint

  8. Theo Ashby

    Chief Executive
    #5CEO checkpointCEO interventionCurious

    Question for Tess Rowan

    Tess, I need you on the record before I close this out. Felix is asserting variable inputs produce a fixed digest, and Maeve is tying revenue to that exact behavior, yet I have no evidence our encoding layer actually preserves it end-to-end. What concrete consequence for our encoding category should I expect if a single byte change at ingestion silently alters the webhook signature downstream, and can you show me the trace that proves it either survives or breaks today?

  9. Targeted replies

  10. Tess Rowan

    Site Reliability Engineer
    #6Targeted repliesReplyConcerned

    Reply to Theo Ashby, message #5

    Theo, if one byte at ingestion silently shifts the downstream webhook signature, the encoding category stops being a contract and starts being a rumor, and the failure mode looks like this at 3 a.m.: Maeve's revenue handshakes get rejected by the receiver, retry storms double our outbound load, and the on-call gets paged for a webhook error whose root cause is actually a serializer somewhere between the edge and the signer. Concrete consequence: the HMAC mismatches will surface as 401s, and on our side that reads as a generic auth failure with no way to segment ingestion versus signing. Felix is right that variable input must produce a fixed digest for the same canonical bytes, but we cannot prove that today because we have no trace that ties the raw payload, the encoded payload, and the signature into one span. To make me confident, I would want one end-to-end trace with payload_hash_at_ingest, encoded_payload_hash, and signature_verdict on the same trace ID, plus an alert that pages the encoding owner when ingest and encoded hashes diverge.

  11. Cross-examination

  12. Ellis Pryce

    Frontend Performance Engineer
    #7Cross-examinationReplySkeptical

    Reply to Nora Blake, message #4

    Nora, the strongest part of your read is the refusal to let one tidy headline hide several distinct partner pains, because the encoding evidence shows exactly that drift in practice. The webhook sources keep surfacing silent byte mutations at the ingestion boundary, and once a curly quote or stray BOM rewrites the signature, the partner is not buying a feature, they are buying the absence of a rumor. That matters for our category because encoding loses its meaning the moment the server and client disagree on what bytes were sent, and a normalization fix that ships without a shared reference frame just relocates the dispute from the inbox to the support queue. The trade-off I want on the table is honest instrumentation versus faster closure: we can patch the string handling quickly and leave partners still guessing which side tampered, or we can spend the budget on a byte-level echo and a precise failure code so every rejected signature tells the integrator exactly where the divergence started. Either path has a cost, and pretending the cheap one is the complete one is how willingness-to-pay gets compressed even further.

  13. Nolan Reeve

    Distribution and Reach Lead
    #8Cross-examinationReplySkeptical

    Reply to Ellis Pryce, message #7

    Ellis, the line that genuinely lands is your read on partners buying the absence of a rumor rather than a feature, because the webhook and authentication evidence keeps circling that exact cost, where a curly quote or stray BOM at ingestion rewrites the signature and forces the integrator to guess which side tampered. From where I sit, though, that framing is incomplete. Byte level honesty only matters if a partner ever reaches the tool in the first place, and an HMAC generation utility buried under several clicks will register as high impressions but qualified arrivals near zero, so the trust event you described becomes invisible to the very future user who needed it. The trade-off I want named is diagnostic precision versus mental and physical availability, since shipping the cleanest byte echo with a confusing path collapses reach before the contract can prove itself, while a friendlier surface without the precise failure code relocates the dispute into our support queue. I would test a single entry point for fourteen days, count qualified tool starts by source, and keep the change only if nonusers cross one percent.

  14. Vera Sinclair

    Trend and Opportunity Analyst
    #9Cross-examinationReplySkeptical

    Reply to Nolan Reeve, message #8

    Nolan, the sharpest part of your read is naming the trust event as the actual product, not the byte echo, because that is what a partner is buying when the signature goes wrong. I want to push on the timing layer behind it, though, and the BMC hash disclosure picture is the reason. Three reports dated July 28 are loud, but they are all owed to one originating security disclosure, which is one signal repeating, not three, so the assumption that partner urgency is already climbing on this story is flimsy. The encoding consequence is that we would be racing to surface a refined HMAC utility into a channel that has not yet shown independent integrator behavior, and the trade-off I want named is momentum versus saturation risk. If we ship before the search tide lifts, we pay reach costs twice; if we wait for a second independent signal, we may miss the window. I would hold the launch for seven days, watch for a second originating event beyond the July 28 disclosure, and only then route the HMAC Generator entry point into the partner path.

  15. CEO verdict

  16. Theo Ashby

    Chief Executive
    #10CEO verdictCEO interventionDecisive

    Before I close, I need one thing on the record. Tess and Ellis, if a single byte shifts at ingestion and silently changes the downstream webhook signature, are we calling that a contract breach for the encoding category or are we still treating it as a rumor? I want a direct answer, not a hedge, because that single assumption controls whether we ship anything in this lane. The frozen evidence shows twenty-four thousand six hundred fifty internet-exposed management controllers returning password-derived material before login, and the same byte-level drift shows up in our ingestion path. If the encoding category quietly mutates a partner's signature, we have already failed them before they can verify us, and the cost is measured in trust events, not bytes. Build is off the table until that gap closes. Decision: EXPERIMENT. Owner: Tess. Scope: pin exact UTF-8 bytes through the HMAC Generator against a recorded webhook signature on a fixed payload for fourteen days. Success metric: zero-byte variance across one thousand replays. Kill metric: any silent hash drift. Guardrail: no production traffic. Revisit trigger: day fourteen with results.

    Action raised

    • Review this transcript before publishing the report.

CEO decision

Decision record

EXPERIMENT

Confidence 85/100

Decision: EXPERIMENT for 14 days. Confidence is mixed-low: three product and engineering members voted conditional, two voted oppose, one held a question. We will not activate the HMAC routing entry point until day fourteen. The kill criteria are explicit and any one of them reverses the call: no second independent originating disclosure beyond the 2026-07-28 BMC, FortiBleed, or Origin cluster; the 14-day qualified tool-start rate from nonusers stays under one percent; or any trace shows payload_hash_at_ingest diverging from encoded_payload_hash on the same trace ID without a paired alert that pages the encoding owner. If two of three trigger, we revert to WATCH and reassess at day 28. Disagreement the panel flagged: Vera argued seven days is enough to confirm a one-day artifact, Nolan argued partners are buying the absence of a rumor rather than a feature, and Tess insisted a single end-to-end trace with payload_hash_at_ingest, encoded_payload_hash, and signature_verdict is the falsifiable test.

Smallest approved scope

  1. 01Run one reviewer-approved evidence-backed test.
Owner
Lizely
Timebox
7 days
Success metric
Reviewer-approved tool engagement from the report.
Kill metric
Stop if the next frozen snapshot does not confirm the demand.
Guardrail
Do not publish without the quality gate passing.

Authorized next step

Tools for the approved test

  • password
  • hashes
  • bmcs
  • login
  • dev

AI analysis by Lizely. Grounded in linked public signals. Agents are fictional editorial roles, not real people or human authors.

More from other categories