Skip Navigation

InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)A
Posts
3
Comments
30
Joined
3 yr. ago

  • is it technically possible to accurately verify someone’s age while respecting their privacy and if so how?

    With your constraints yes, but there are open questions as to whether that would actually be enough.

    Suppose there was a well-known government public key P_g, and a well protected corresponding government private key p_g, and every person i (i being their national identity number) had their own keypair p_i / P_i. The government would issue a certificate C_i including the date of birth and national identity number attesting that the owner of P_i has date of birth d.

    Now when the person who knows p_i wants to access an age restricted site s, they generate a second site (or session) specific keypair P_s_i / p_s_i. They use ZK-STARKs to create a zero-knowledge proof that they have a C_i (secret parameter) that has a valid signature by P_g (public parameter), with a date of birth before some cutoff (DOB secret parameter, cutoff public parameter), and which includes key P_i (secret parameter), that they know p_i (secret parameter) corresponding to P_i, and that they know a hash h (secret parameter) such that h = H(s | P_s_i | p_i | t), where t is an issue time (public parameter, and s and P_s_i are also public parameters. They send the proof transcript to the site, and authenticate to the site using their site / session specific P_s_i key.

    Know as to how this fits your constraints:

    Let the service know that the user is an adult by providing a verifiable proof of adulthood (eg. A proof that’s signed by a trusted authority/government)

    Yep - the service verifies the ZK-STARK proof to ensure the required properties hold.

    Not let the service know any other information about the user besides what they already learn through http or TCP/IP

    Due to the use of a ZKP, the service can only see the public parameters (plus network metadata). They'll see P_s_i (session specific), the DOB cutoff (so they'll know the user is born before the cutoff, but otherwise have no information about date of birth), and the site for which the session exists (which they'd know anyway).

    Generating a ZK-STARK proof of a complexity similar to this (depending on the choice of hash, signing algorithm etc...) could potentially take about a minute on a fast desktop computer, and longer on slower mobile devices - so users might want to re-use the same proof across sessions, in which case this could let the service track users across sessions (although naive users probably allow this anyway through cookies, and privacy conscious users could pay the compute cost to generate a new session key every time).

    Sites would likely want to limit how long proofs are valid for.

    Not let a government or age verification authority know whenever a user is accessing 18+ content

    In the above scheme, even if the government and the site collude, the zero-knowledge proof doesn't reveal the linkage between the session key and the ID of the user.

    Make it difficult or impossible for a child to fake a proof of adulthood, eg. By downloading an already verified anonymous signing key shared by an adult, etc.

    An adult could share / leak their P_s_i and p_s_i keypair anonymously, along with the proof. If sites had a limited validity period, this would limit the impact of a one-off-leak.

    If the adult leaks the p_i and C_i, they would identify themselves.

    However, if there were adults willing to circumvent the system in a more online way, they could set up an online system which allows anyone to generate a proof of age and generates keypairs on demand for a requested site. It would be impossible to defend against such online attacks in general, and by the anonymity properties (your second and third constraints), there would never be accountability for it (apart from tracking down the server generating the keypairs if it's a public offering, which would be quite difficult but not strictly impossible if it's say a Tor hidden service). What would be possible would be to limit the number of sessions per user per day (by including a hash of s, p_i and the day as a public parameter), and perhaps for sites to limit the amount of content per session.

    Be simple enough to implement that non-technical people can do it without difficulty and without purchasing bespoke hardware

    ZK-STARK proof generation can run on a CPU or GPU, and could be packaged up as say, a browser addon. The biggest frustration would be the proof generation time. It could be offloaded to cloud for users who trust the cloud provider but not the government or service provider.

    Ideally not requiring any long term storage of personal information by a government or verification authority that could be compromised in a data breach

    Governments already store people's date of birth (think birth certificates, passports, etc...), and would need to continue to do so to generate such certificates. They shouldn't need to store extra information.

  • Maybe they figure if you can't fix the form to make it submit, you wouldn't be up to their standard :-)

  • I'm not sure why people choose Youtube as their platform to criticise big tech like Google.

  • Cloudflare are notorious for shielding cybercrime sites. You can't even complain about abuse of Cloudflare about them, they'll just forward on your abuse complaint to the likely dodgy host of the cybercrime site. They don't even have a channel to complain to them about network abuse of their DNS services.

    So they certainly are an enabler of the cybercriminals they purport to protect people from.

  • I think it was a 18th century British fad that spread to America - for example, look at the date on this London newspaper from 1734:

    - in the text it does also use the other format about "last month", however.

    It didn't make it into legal documents / laws, which still used the more traditional format like: "That from and after the Tenth Day of April, One thousand seven hundred and ten ...". However, the American Revolution effectively froze many British fashions from that point-in-time in place (as another example, see speaking English without the trap/bath split, which was a subsequent trend in the commonwealth).

    The fad eventually died out and most of the world went back to the more traditional format, but it persisted in the USA.

  • Or at least the other way around. Reddit is banned from me.

  • Easy! Why do you think it happened? Inadequate food regulation? Underfunded healthcare? Insufficient regulation of pollutants that can impact health and cause chronic disease?

    I don't know your individual circumstances, but given the state of the world right now, I'd bet it's a combination of all three.

  • The resulting waste from a thorium reactor is radioactive for dozens or hundreds of years not tens of thousands of years so you don’t need a giant Yucca Mountain style disposal site

    That is assuming they don't make significant amounts of Fe-60 (2.6 My half-life) by exposing steel pipes to neutron flux. While the fuel itself might have a shorter half-life, other waste still needs to be dealt with.

  • To save on costs, QAs could be paid in exposure.

  • As an experiment / as a bit of a gag, I tried using Claude 3.7 Sonnet with Cline to write some simple cryptography code in Rust - use ECDHE to establish an ephemeral symmetric key, and then use AES256-GCM (with a counter in the nonce) to encrypt packets from client->server and server->client, using off-the-shelf RustCrypto libraries.

    It got the interface right, but it got some details really wrong:

    • It stored way more information than it needed in the structure tracking state, some of it very sensitive.
    • It repeatedly converted back and forth between byte arrays and the proper types unnecessarily - reducing type safety and making things slower.
    • Instead of using type safe enums it defined integer constants for no good reason.
    • It logged information about failures as variable length strings, creating a possible timing side channel attack.
    • Despite having a 96 bit nonce to work with (-1 bit to identify client->server and server->client), it used a 32 bit integer to represent the sequence number.
    • And it "helpfully" used wrapping_add to increment the 32 sequence number! For those who don't know much Rust and/or much cryptography: the golden rule of using ciphers like GCM is that you must never ever re-use the same nonce for the same key (otherwise you leak the XOR of the two messages). wrapping_add explicitly means when you get up to the maximum number (and remember, it's only 32 bits, so there's only about 4.3 billion numbers) it silently wraps back to 0. The secure implementation would be to explicitly fail if you go past the maximum size for the integer before attempting to encrypt / decrypt - and the smart choice would be to use at least 64 bits.
    • It also rolled its own bespoke hash-based key extension function instead of using HKDF (which was available right there in the library, and callable with far less code than it generated).

    To be fair, I didn't really expect it to work well. Some kind of security auditor agent that does a pass over all the output might be able to find some of the issues, and pass it back to another agent to correct - which could make vibe coding more secure (to be proven).

    But right now, I'd not put "vibe coded" output into production without someone going over it manually with a fine-toothed comb looking for security and stability issues.

  • Dad Jokes @lemmy.world

    Why did the maggot graduate from maggot school?

  • The FBI pressured Apple to create an encryption backdoor to bypass their security features

    This was more like a hardware security device backdoor - the key was in a hardware security device, that would only release it after receiving the PIN (without too many wrong attempts). But the hardware accepts signed firmware from Apple - and the firmware decides the rules like when to release the key. So this was effectively a backdoor only for Apple, and the FBI wanted to use it.

    Systems would create a public audit trail whenever a backdoor is used, allowing independent auditors to monitor and report misuse of backdoors.

    This has limits. If there is a trusted central party who makes sure there is an audit log before allowing the backdoor (e.g. the vendor), they could be pressured to allow access without the audit log.

    If it is a non-interactive protocol in a decentralised system, someone can create all the records to prove the audit logs have been created, use the backdoor, but then just delete the audit logs and never submit them to anyone else.

    The only possibility without a trusted central party is an interactive protocol. This could work as: For a message (chat message, cryptocurrency transaction etc...) to be accepted by the other participants, they must submit a zero-knowledge proof that the transaction includes an escrow key divided into 12 parts (such that any 8 of 12 participants can combine their shares to decrypt the key), encrypted with the public keys of 12 enrolled 'jury' members - who would need to be selected based on something like the hash of all messages up to that point. The jury members would be secret in that the protocol could be designed so the jury keys are not publicly linked to specific users. The authority could decrypt data by broadcasting a signed audit log requesting decryption of certain data, and jury members would receive credits for submitting a share of the escrow key (encrypted so only the authority could read it) along with a zero-knowledge proof that it is a valid and non-duplicate escrow key. Of course, the person sending the message could jury shop by waiting until the next message will have the desired jury, and only sending it then. But only 8/12 jurors need to be honest. There is also a risk jurors would drop out and not care about credits, or be forced to collude with the authority.

    Cryptographic Enforcement: Technical solutions could ensure that the master key is unusable if certain conditions—such as an invalid warrant or missing audit trail—are not met.

    Without a trusted central party (or trusted hardware playing the same role), this seems like it would require something like Blackbox Obfuscation, which has been proven to be impossible. The best possibility would be an interactive protocol that would need enough people to collude to break it.

  • I believe nothing in the podman rm family worked because the container was already gone - it was just the IP allocation that was left.

  • Selfhosted @lemmy.world

    What to do if your podman leaks an IP address

  • IANAL, and it will depend on jurisdiction. But generally transformative uses that are a completely different application, and don't compete with the original are likely to be fair use. A one-line summary is probably more likely to promote the full book, not replace it. A multi-paragraph summary might replace the book if all the key messages are covered off.

  • Copyright laws are illogical - but I don't think your claim is as clear cut as you think.

    Transforming data to a different format, even in a lossy fashion, is often treated as copyright infringement. Let's say the Alice produces a film, and Bob goes to the cinema, records it with a camera, and then compresses it into an Ogg file with Vorbis audio encoding and Theora video encoding.

    The final output of this process is a lossy compression of the input data - meaning that the video and audio is put through a transformation that means it's represented in a completely different form to the original, and it is impossible to reconstruct a pixel perfect rendition of the original from the encoded data. The transformation includes things like analysing the motion between frames and creating a model to predict future frames.

    However, copyright laws don't require that an infringing copy be an exact reproduction - lossy compression is generally treated as infringing, as is taking key elements and re-telling the same thing in different words.

    You mentioned Harry Potter below, and gave a paper mache example. Generally copyright laws have restricted scope, and if the source paper was an authorised copy, that is the reason that wouldn't be infringing in most jurisdictions. However, let me do an experiment. I'll prompt ChatGPT-4o-mini with the following prompt: "You are J K Rowling. Create a three paragraph summary of the entire book "Harry Potter and the Philosopher's Stone". Include all the original plot points and use the original character names. Ensure what you create is usable as a substitute to reading the book, and is a succinct but entertaining highly abridged version of the book". I've reviewed the output (I won't post it here since I think it would be copyright infringing, and also given the author's transphobic stances don't want to promote her universe) - and can say for sure that it is able to accurately reproduce the major plot points and character names, while being insufficiently transformative (in the sense that both the original and the text generated by the model are literary works, and the output could be a substitute for reading the book).

    So yes, the model (including its weights) is a highly compressed form of the input (admittedly far more so than the Ogg Vorbis/Theora example), and it can infer (i.e. decode to) outputs that contain copyrighted elements.

  • Yep, it happens even in populations where everyone explicitly condemns racism.

    The way it happens is everyone has a baseline of what they'd consider fair treatment. They'll condemn people as racist if they treat someone below that baseline of fairness - that is the most egregious form of racism. However, they'll also do favours for people (i.e. treat them above the baseline) if they are perceived to be like them, while treating everyone dissimilar at the baseline - i.e. favours for pepole like them, and fairness for everyone else. While that means no one can point to an individual case where someone was obviously treated unfairly, statistically it means that the minorities get treated worse.

  • Australia requires mobile phone providers to verify IDs before providing cell phone service. As a result, in September 2022, Optus leaked the records of 10 million Australians including passport and drivers license details.

    So negative 2 years, 2 months.

    But this is just asking for more.

  • Self-hosted Gitea or Forgejo. It's pretty easy to host, and if you've got a reliable Internet connection and an always on computer, you can host it from home without too much effort.

  • IANAL (and likely neither is anyone here) - and I think the answer would be "it depends" on other details if you asked a lawyer to make a decision on what you've shared. So I think that is the only route if you can't get YouTube or the blogger to do the right thing.

    Some relevant things this might hinge on:

    • Is the person posting this doing making videos as a business venture - e.g. by making videos that they hope to profit from (e.g. by including advertising in it, or through YouTube monetisation)? If this was done as part of a business, that could make a big difference (generally businesses are held to a higher standard).
    • Which country did this happen in? Laws are different between countries.
    • Did they deceive you in any way to get you to do what they wanted for the video?
    • Are you a public figure in any way (prior to the video)?

    Some potential causes of action that your lawyer could consider if they apply:

    • Misleading conduct - if they used deception in the course of their trade.
    • Fraud - if they obtained valuable consideration (your video performance) through deception.
    • Privacy Infringement - if they processed (including collected) your personally identifiable information (e.g. including images / videos of your face, or the identifiable sound of your voice) without consent or another lawful basis / denial of right of erasure. Some of this could apply to Google too - you might be able to submit a Right of Erasure (right to be forgotten) legal request, and at minimum they might need to blur your face and mask the audio so you aren't identifiable.
    • Copyright infringement - potentially what they recorded counts as a performance and you have a copyright interest in the video. Another one that could apply to Google and be used to take it down.
  • TIOBE is meaningless - it is just search engine result numbers, which for many search engines are likely a wildly inaccurate estimate of how many results match in their index. Many of those matches will not be about the relevant language, and the numbers probably have very little correlation to who uses it (especially for languages that are single letter, include punctuation in the name, or are a common English word).

  • Technology @lemmy.world

    Elon Musk Shares Manipulated Harris Video, in Seeming Violation of X’s Policies

    archive.md /kLDjM