The president’s “official act” would be issuing the pardon. The referenced Supreme Court decision just means it would not be a “crime” for the president to issue said pardon, not that the pardon would stand.
The president can’t intervene at the state level. From americanbar.org:
A U.S. president has broad but not unlimited powers to pardon. For example, a president cannot pardon someone for a state crime.
You are conflating the concept and the implementation. PFS is a feature of network protocols, and they are a frequently cited example, but they are not part of the definition. From your second link, the definition is:
Perfect forward secrecy (PFS for short) refers to the property of key-exchange protocols (Key Exchange) by which the exposure of long-term keying material, used in the protocol to authenticate and negotiate session keys, does not compromise the secrecy of session keys established before the exposure.
And your third link:
Forward secrecy (FS): a key management scheme ensures forward secrecy if an adversary that corrupts (by a node compromise) a set of keys at some generations j and prior to generation i, where 1 ≤ j < i, is not able to use these keys to compute a usable key at a generation k where k ≥ i.
Neither of these mention networks, only protocols/schemes, which are concepts. Cryptography exists outside networks, and outside computer science (even if that is where it finds the most use).
Funnily enough, these two definitions (which I’ll remind you, come from the links you provided) are directly contradictory. The first describes protecting information “before the exposure” (i.e. past messages), while the second says a compromise at j
cannot be used to compromise k
, where k
is strictly greater than j
(i.e. a future message). So much for the hard and fast definition from “professional cryptographers.”
Now, what you’ve described with matrix sounds like it is having a client send old messages to the server, which are then sent to another client. The fact the content is old is irrelevant - the content is sent in new messages, using new sessions, with new keys. This is different from what I described, about a new client downloading old messages (encrypted with the original key) from the server. In any case, both of these scenarios create an attack vector through which an adversary can get all of your old messages, which, whether you believe violates PFS by your chosen definition or not, does defeat its purpose (perhaps you prefer this phrasing to “break” or “breach”).
This seems to align with what you said in your first response, that Signal’s goal is to “limit privacy leaks,” which I agree with. I’m not sure why we’ve gotten so hung up on semantics.
I wasn’t going to address this, but since you brought it up twice, running a forum is not much of a credential. Anyone can start a forum. There are forums for vaxxers and forums for antivaxxers, forums for atheists and forums for believers, forums for vegans and forums for carnivores. Not everyone running these forums is an expert, and necessarily, not all of them are “right.” This isn’t to say you don’t have any knowledge of the subject matter, only that running a forum isn’t proof you do.
If you’d like to reply, you may have the last word.
I would argue that it is not limited to network traffic, it is the general concept that historical information is not compromised, even if current (including long-term) secrets are compromised.
From my comment earlier:
There is no sharing of messages between linked devices - that would break forward secrecy
This describes devices linked to an account, where each is retrieving messages from the server - not a point-to-point transfer, which is how data is transferred from one Android device to another. If a new device could retrieve and decrypt old messages on the server, that would be a breach of the forward security concept.
Signal Desktop does not support transferring message history to or from any device.
You’re describing something very different - you already have the messages, and you already have them decrypted. You can transfer them without the keys. If someone gets your device, they have them, too.
Whether Signal keeps the encrypted the messages or not, a new device has no way of getting the old messages from the server.
“They” is the browser/browser maker. The browser, acting as the client, would have access to the keys and data. The browser maker could do whatever they want with it.
To be clear, I’m not saying they would, only that it defeats the purpose of an E2E chat, where your goal is to minimize/eliminate the possibility of snooping.
Using an E2E chat app in your browser necessarily makes the keys and decrypted messages available to your browser. They would have the ability to read messages, impersonate users, alter messages, etc. It would defeat the purpose of a secure messaging platform.
There is no sharing of messages between linked devices - that would break forward secrecy, which prevents a successful attacker from getting historical messages. See the first bullet of: https://support.signal.org/hc/en-us/articles/360007320551-Linked-Devices
Messages are encrypted per device, not per user (https://signal.org/docs/specifications/sesame/), and forward secrecy is preserved (https://en.m.wikipedia.org/wiki/Forward_secrecy, for the concept in general, and https://signal.org/docs/specifications/doubleratchet/ for Signal’s specific approach).
Yes, as long as you set up the desktop client before sending the message.
Messages sent with Signal are encrypted per device, not per user, so if your desktop client doesn’t exist when the message is sent, it is never encrypted and sent for that device.
When you set up a new client, you will only see new messages.
See https://signal.org/docs/specifications/sesame/ for details.
This is not entirely correct. Messages are stored on their servers temporarily (last I saw, for up to 30 days), so that even if your device is offline for a while, you still get all your messages.
In theory, you could have messages waiting in your queue for device A, when you add device B, but device B will still not get the messages, even though the encrypted message is still on their servers.
This is because messages are encrypted per device, rather than per user. So if you have a friend who uses a phone and computer, and you also use a phone and computer, the client sending the message encrypts it three times, and sends each encrypted copy to the server. Each client then pulls its copy, and decrypts it. If a device does not exist when the message is encrypted and sent, it is never encrypted for that device, so that new device cannot pull the message down and decrypt it.
For more details: https://signal.org/docs/specifications/sesame/
I think it is less a question of whether the voice sounds like Scarlett Johansson, as that is subjective and arbitrary (e.g. assume you could objectively measure the similarity, what’s the acceptable cut off - 80%? 90%?). The same is true for the uniqueness of her voice.
I think the real question will come down to intention. They clearly wanted her voice. Did they intentionally attempt to replicate it when they couldn’t have the real thing? If so, there is precedent that would suggest they could be in a little trouble here, e.g. https://www.latimes.com/archives/la-xpm-1990-05-09-me-238-story.html
This kind of reminds me of Crispin Glover, from Back to the Future. He tried to negotiate a higher pay for the second movie, so the producers hired a different actor to play the role, but deliberately made the actor up to look like Glover. In response, Glover sued the producers and won. It set a critical precedent for Hollywood, about using someone’s likeness without consent.
The article mentions they reached out to her two days before the launch - if she had said ‘OK,’ there’s no way they could have even recorded what they needed from her, let alone trained the model in time for the presentation. So they must have had a Scarlett Johansson voice ready to go. Other than training the model on movies (really not ideal for a high quality voice model), how would they have gotten the recordings they needed?
If they hired a “random” voice actress, they might not run into issues. But if at any point they had a job listing, a discussion with a talent manager, or anything else where they mentioned wanting a “Scarlett Johansson sound-alike,” they might have dug themselves a nice hole here.
Specifically regarding your question about hiring a voice actor that sounds like someone else - this is commonly done to replace people for cartoons. I don’t think it’s an issue if you are playing a character. But if you deliberately impersonate a person, there might be some trouble.
Considering that you are not using their software, was the laptop worth the premium you paid for it, vs buying from Clevo directly?
I figured the hardware and software coming from the same vendor would yield the best results, and wanted to support a company that supports right-to-repair, and Linux in general. But ultimately I found Pop!_OS buggy and had performance issues, so I’m not using their OS, and their firmware is causing issues with my SSD, so I’d like to be off of it as well (but was told "there’s no process for reverting to the proprietary firmware“ for the specific model I have). I could have bought a Clevo directly, saving hundreds of dollars, and probably had a better working machine.
Would not recommend System76. I’ve had many issues with my machine (primarily software, related to their buggy custom firmware, and Pop!_OS, until I ditched that for stock Ubuntu). Their support has been terrible - rather similar to OP’s, actually. I’ve had the laptop for about 2.5 years, and I’m checking practically daily for something to replace it.
For what it’s worth, I just bought a TCL 55S450F (55 inch 4K HDR FireTV) specifically because it does not ever need an internet connection to function (expressly stated in the manual). It is currently on Amazon for $268 (they have other sizes at other prices). It’s a great TV, considering the price. The only real drawback for me is the remote is Bluetooth, rather than infrared (less compatible with universal remotes).
Note that for full dumb TV effect, you’ll want to go into the settings and tell it to resume the last input, rather than going to the home screen when you turn it on (without connecting it to the Internet, the home screen is basically just a big banner telling you it’s not connected, and when you dismiss that, it just allows you to access inputs and manage settings).
You are falling into a common trap. LLMs do not have understanding - asking it to do things like convert dates and put them on a number line may yield correct results sometimes, but since the LLM does not understand what it’s doing, it may “hallucinate” dates that look correct, but don’t actually align with the source.
You might get lucky. Based on https://support.system76.com/articles/system-firmware/, it doesn’t seem to be all models. Note however that the list is out-of-date; my galp5 is not listed, but does not work. Fortunately, I found this out doing a RAM check, and not a firmware upgrade.
My usb-c ports can be a little touchy, too. The SD card slot is also really bad - the card has to be positioned perfectly to slide in, or it jams. I’m also upset that the usb-c port can only be used for charging after a full boot. It cannot be used to perform firmware updates, or even to do a ram test. This means day-to-day, usb-c can be used, but I have to keep track of the barrel charger, just in case. This, of course, was not specified on the product details page (nor, I think, that only one of the two usb-c ports could be used for charging - it’s possible I overlooked that, but still frustrating on an expensive laptop that lists usb-c charging as a feature).
In college, in my intro to Java class, I had a program I’d written that I was trying to show someone. Every time I ran it (in Eclipse) it crashed. It had worked earlier, but was then consistently crashing. Looked at the stacktrace, looked at the code… No issues I could spot. After quite a while of poking around, with the file reverted to its original state and still failing, I did a select all, cut, paste (into the same file), and it started working again.