![]() ![]() |
Aug 21 2006, 07:32 AM
Post
#1
|
|
|
Moving Target ![]() ![]() Group: Members Posts: 881 Joined: 31-July 06 From: Denmark Member No.: 8,995 |
When people talk about breaking encryption, most of the time they think about breaking public key encryption.
Public key encryption is based on the idea that Alice and Bob meet on the internet and want to share encrypted information. They can then share public keys, do some simple and fast mathematical operations on them, do some more operations, and now they're ready to transmit encrypted data. The clever part here is that they don't have to agree on an encryption code before they "meet" on the internet, enabling encrypted traffic between strangers. This is because that even though Eve, who wants to spy on them, has picked up the data they transmitted between them to establish an encryption protocol, without Alice's or Bob's chosen private key (a very large prime number) she can't effectively "crack the code". The difficulty of the problem is basically one of factorizing a very large number that is the product of 2 very large primes. This just takes a really, really long time ("standard" professional current encryption takes months on supercomputers and 10,000ths of distributed computers to crack today). Build faster computers for cracking codes you say? The problem is that the complexity increases exponentially for the hacker - if computers get 1,000 times faster, the encrypters increase the complexity by 1,000 and are able to do their operations in the same time, while it now gets 1,000,000 times harder for the hacker so it now takes 1,000 times as long. The hacker just gets further and further behind as technology increases. There are 2 potential ways to, in the future, hack encryption fast: 1) develop a mathematical method to quickly integer factorize large numbers by conventional means. It has not been proven that this isn't possible, but everyone expects that it can't be done. I wouldn't put my money on this. 2) develop efficient quantum computers. Quantum computers can do some operations that theoretically lets them integer factorize "quickly" and they don't get hit by exponentional complexity as the encrypters increase the size of the prime numbers. Your average cyberdeck in 2070 obviously has a quantum computing module in there, letting it decrypt intercepted data quickly and easily. All of this is however based on the premise of public key encryption, which is the only way to do it for communication strangers. People who are not strangers don't use public keys though. They use one time codes. Before you separate, you agree on a list with a number of codes, which are basically just long strings of random numbers you use to encrypt the data. There isn't a mathematical pattern to them, and the hacker doesn't have anything he can number crunch. This is what a rigger would do with his drones. Back in the shop, he makes a one-time pad with each drone. What a hacker trying to intercept the traffic would hear is "Use code 23113132 [static for 100 milliseconds] Use code 654651651 [static for 100 milliseconds]". This can't be decrypted - there's no pattern, no numbers to crunch, nothing. The drone only accepts encrypted traffic, and the hacker can't spoof and encrypt a message - he doesn't know the encodings, so if he tries to send "Use code 7654435 [command]", the drone decrypts the command and gets static, so it disregards it. The only ways to hack a drone is 1) hack the cyberdeck of the rigger and get hold of the one-time pads (or got hold off them in some other way, like from his drone shop) 2) if the rigger enables the drone to accept normal communication traffic. Everything else is just plain unrealistic. This goes for encrypted comms between professional forces too btw. |
|
|
|
Aug 21 2006, 09:24 AM
Post
#2
|
|
|
Target ![]() Group: Members Posts: 2 Joined: 5-July 06 Member No.: 8,839 |
Althrough I can see what you mean. I myself would never run it like that it would take away a cool aspect of the game.
|
|
|
|
Aug 21 2006, 10:06 AM
Post
#3
|
|
|
Immortal Elf ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 11,410 Joined: 1-October 03 From: Pittsburgh Member No.: 5,670 |
but it would add a very cool, very different other aspect. because from now on, you can't just hand encryption over to the hacker and have him wave his magic wand--you have to hack. that might mean a sneak-and-peak through a corporate office to see if anyone left their password written down at their desk. that might mean social engineering to convince an employee to give your team access. that might mean structural re-engineering on an employee's shins, for the same reason. etcetera.
|
|
|
|
Aug 21 2006, 10:15 AM
Post
#4
|
|
|
Runner ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 2,526 Joined: 9-April 06 From: McGuire AFB, NJ Member No.: 8,445 |
Hmm... this rigger is using one time codes...
... let me see, spam his drone with random code commands to tear away at his drone's pad and now he cant use his own drone till he himself catches up... but everytime he tries, the drone moves up in the count again, so its a crapshoot if he gets the next one right and continues on from there... Thats the problem with the one time pad method. Everytime you use or recieve an encrypted message, you have to discard the current code. |
|
|
|
Aug 21 2006, 10:27 AM
Post
#5
|
|
|
Immortal Elf ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 11,410 Joined: 1-October 03 From: Pittsburgh Member No.: 5,670 |
that only works if you can find his drone. and if the rigger doesn't find you and have his team shoot you in the face, because you're giving away your location with all those massive transmissions.
besides, spamming the drone with random commands won't work. you'd have to get insanely lucky to get an actual command out of random noise within any reasonable time frame--that's the whole point of good encryption. all you're doing with random noise transmissions is, basically, trying to crack the encryption with brute force. the encryption we use today would take, at a minimum, years to crack that way. |
|
|
|
Aug 21 2006, 10:37 AM
Post
#6
|
|||
|
Moving Target ![]() ![]() Group: Members Posts: 881 Joined: 31-July 06 From: Denmark Member No.: 8,995 |
You don't have to discard any codes if you don't want to. Random code commands with incorrectly encrypted content means that it hasn't been compromised. |
||
|
|
|||
Aug 21 2006, 10:39 AM
Post
#7
|
|||
|
Moving Target ![]() ![]() Group: Members Posts: 881 Joined: 31-July 06 From: Denmark Member No.: 8,995 |
It's not even really trying to crack it. Even if you do get lucky and hit a random string that gets interpreted as a command, you haven't cracked anything and can't use that to encrypt or decrypt anything |
||
|
|
|||
Aug 21 2006, 10:44 AM
Post
#8
|
|
|
Immortal Elf ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 11,410 Joined: 1-October 03 From: Pittsburgh Member No.: 5,670 |
true. even so, the likelihood of getting a useable response--and i'm including random actions and malfuctions as useable responses--within a reasonable timeframe is vanishingly low.
|
|
|
|
Aug 21 2006, 10:56 AM
Post
#9
|
|
|
Running Target ![]() ![]() ![]() Group: Members Posts: 1,498 Joined: 4-August 05 From: ADL Member No.: 7,534 |
Shadowrun is not about realism. Its about a certain kind of game experience.
I agree that the current hacking rules do not deliver this experience, as Joe Hacker can hack the most advanced encryption out there in about 18 seconds, but one time pad encryption does not deliver this game experience, too. You basically want a rule where you take a little longer to decrypt things and where you may not succeed for sure if the encryption is too hard. |
|
|
|
Aug 21 2006, 11:15 AM
Post
#10
|
|
|
Hoppelhäschen 5000 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 5,807 Joined: 3-January 04 Member No.: 5,951 |
Using OTPs for transmissions requires packet-encryption, using codes that never are used twice: Not for encoding, nor in another drone.
The code-jumps you proposed are irrelevant to the encryption itself. Enter old problem: source of random data. Real randomness isn't easy to come by, and much harder to generate. Drones transmit huge amounts of data, especially if jumping into them. As they need exactly the same amount of data for codes as those are used up, you need huge libraries, which, depending on the mission lenght, might even stretch the 'unlimited storage' of SR4. If you lose a drone, you lose the data completly, too. So, basically, that setup might work some time, but it will be inpractical on the long run. OTPs are great for secret communication of short messages, as they can be used to encrypt manually, though. |
|
|
|
Aug 21 2006, 11:52 AM
Post
#11
|
|
|
Moving Target ![]() ![]() Group: Members Posts: 881 Joined: 31-July 06 From: Denmark Member No.: 8,995 |
@RvD: The code jumps aren't necessary for encryption, they're there to ensure that you both agree on where you are in the encoding stream. It's a necessity when operating in environments where the parties sometimes lose contact.
You're taking the onetime pad name too literally. Most likely the codes will contain seeds for one or more semi-random functions that tells you how to encrypt the data with real random data. So a code might be 2-part, one says what semi-random function to use, the other is a table index that you look up a seed with. The semi-random function plus seed then gives you a long output that tells you what snippets to use from the real random data stream you've stored. Something like that gives you effectively unlimited streams for encrypting. If it is not enough for you, then that scheme can be made a lot more random and given a lot more combinations. A combination of semi-random functions, tables that only Alice and Bob knows, and a large common real random data file, and you've got something that can keep on spewing out random data without repeating itself for ages without the need for unrealisticly large pads. |
|
|
|
Aug 21 2006, 12:01 PM
Post
#12
|
|||
|
Moving Target ![]() ![]() Group: Members Posts: 881 Joined: 31-July 06 From: Denmark Member No.: 8,995 |
If Joe Hacker tries to roll 6 dice 6 times, he'll glitch 32% of the time. |
||
|
|
|||
Aug 21 2006, 12:09 PM
Post
#13
|
|
|
Hoppelhäschen 5000 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 5,807 Joined: 3-January 04 Member No.: 5,951 |
Certainly, I'm no cryptoanalyst, but that approach sounds like snake-oil:
Essentially it still is an OTP that is reused, but shifts the start and ending of that pad with a PRNG. This removes the proven security of an OTP, and the PRNG opens the possibility of pattern matching attacks. As the OTPs algorithm itself is very easy, it is trival to break once you have exploited the PRNG for pattern matching. This is especially true since the attacker has a very good guess what parts of the plaintext looks like, since the protocol for drone communication is standardized. |
|
|
|
Aug 21 2006, 12:51 PM
Post
#14
|
|
|
Moving Target ![]() ![]() Group: Members Posts: 881 Joined: 31-July 06 From: Denmark Member No.: 8,995 |
The whole setup is really just making the OTP extremely large without using extreme amounts of storage.
At the very least, you must agree that you could easily store a very large random stream to start with as a basis for a OTP - you could measure it in terms of the drone's recording capacity. Say 2 hours worth. Before you can even start pattern matching, you need 2 hours of full sensor feed transmitted. After 4 hours, you have 1 run-through of the stream. That is much too little to get anything useful out of, at best you figure out just a bit of the encoding stream if you're really lucky with recognizing the actual data. If I mixed the random stream, even with PRNG-based methods, you'd completely wipe out any pattern matching attemps. Pattern matching through something encoded with a random stream that's mixed up between each pass, and with the underlying data being very close to random too (by far the bulk of the data will be video feed or neural impulses) requires an incredible amount of intercepted data, and the power needed to analyze it would be enormous (and AFAIK quantum computing tricks can't help pattern analyze). Hey, you could even have one random stream to encode with, and another random stream to determine how it gets mixed up after each pass (and another random stream to mix up the second etc., for as long as you need the chain to be). That sounds like it gives pattern matchers an exponential problem with only linear storage increase for the encryption. |
|
|
|
Aug 21 2006, 12:59 PM
Post
#15
|
|
|
Runner ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 2,925 Joined: 26-February 02 Member No.: 948 |
Well, there are ways of completely cut of any kind of Spoofing attempt, and Encryption can always be slightly redesigned to take longer.
Standing order: Doublecheck command Drone always doublecheck latest sent order from Persona (Spoofing will fail as the Spoofer does not get anything sent back to it, the drone checks if the order was genuine with Persona and says Ay or Nay if the response was correct or not. Harder Encryption There are several ways one can encrypt a signal or the information of a device. 1. Public Encryption Public Encryption is the standard Encryption people have on their devices and one does not need any special skills for it. Decryption works as in SR4 Core Rules (Encrypt X2). 2. Secure Encryption This requires an Encryption test and the successes are added to the Multiplier for cracking the encryption. A rating 4 Encryption and 4 successes on an Encryption test would raise the threshold to Encrypt X6. 3. Military Encryption Works as Secure Encryption but takes considerably longer. Decrypt+Response VS (Encrypt [Rating] / 1 Hour). |
|
|
|
Aug 21 2006, 01:18 PM
Post
#16
|
|||
|
Running Target ![]() ![]() ![]() Group: Members Posts: 1,498 Joined: 4-August 05 From: ADL Member No.: 7,534 |
1.) Joe Normal rolles 8 dice. He is in VR and gets a +2 bonus. He only has to roll 5 times with 8 dice, leading to a cumulative glitch probability of 14% 2.) Glitch does not interrupt the extended test. Only a critical test does. Actually, the chances of him failing due to a glitch that reduces his hits below 0 or of a critical glitch are somehwere of arround 5% percent. 3.) This is JoeNormal hacker vs fucking best encrpytion out there. A standard SR4 shadowrunner hacker will have response 6 and decrypt 6 and hack everything with 99.9% probability in an average of 6 Seconds. Encyryption this way is just another dice roll that means noting. That is anti streamlining. @The Jopp Adding extra rules is anti streamlining, too. Just modifiy the existing rules that they make sense: Realtime Encryption (traffic) Decrypt + Electronic Warfare (encryption rating x 4, encryption rating combat turns) File Encryption Decrypt + Electronic Warfare (encryption rating x 4, encryption rating hours) Limited by "electronic warfare" +1 rolls |
||
|
|
|||
Aug 21 2006, 01:21 PM
Post
#17
|
|||
|
Moving Target ![]() ![]() Group: Members Posts: 881 Joined: 31-July 06 From: Denmark Member No.: 8,995 |
Except the hacker also picks up the (wireless) doublecheck request from the drone and spoofs an Ay response. Also, every doublecheck request from the drone for the rigger's legitimate commands, the hacker spoofs a Nay response. The drone ends up getting conflicting responses and is unable to act. Smart hackers combine this with jamming the rigger. |
||
|
|
|||
Aug 21 2006, 01:26 PM
Post
#18
|
|||
|
Moving Target ![]() ![]() Group: Members Posts: 133 Joined: 8-September 05 Member No.: 7,718 |
Nope. If the message does not de-cyrpt correctly you don't advance your One time Pad counter. The message was clearly a fake, and so you stay in sync with the sender by not advanceing. Additionaly, every message could include an unencrypted offset telling the eother party where to look in the coe for it's next key. So long as no part of the code is ever re-used the snopper has no way to recover the plaintext. |
||
|
|
|||
Aug 21 2006, 01:30 PM
Post
#19
|
|||||
|
Moving Target ![]() ![]() Group: Members Posts: 881 Joined: 31-July 06 From: Denmark Member No.: 8,995 |
1) Imo you don't get VR bonus for that test. You roll response + decrypt - the hacker's skill isn't involved. The interval is 1 turn, not 1 pass - his IP bonuses from VR isn't applied. I view this as a pure computational, number-crunching task for the commlink, the hacker doesn't enter into the equation. 2) I wrongly thought that extended tests was aborted with glitches. Thanks :D 3) I agree that encryption way, way too easy to break. |
||||
|
|
|||||
Aug 21 2006, 01:42 PM
Post
#20
|
|||
|
Hoppelhäschen 5000 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 5,807 Joined: 3-January 04 Member No.: 5,951 |
Exactly that breaks the proven security of an OTP. |
||
|
|
|||
Aug 21 2006, 02:16 PM
Post
#21
|
|||||
|
Moving Target ![]() ![]() Group: Members Posts: 881 Joined: 31-July 06 From: Denmark Member No.: 8,995 |
This isn't about proven security. Obviously you need an OTP the size of the data you want to encode if you want proven security that positively can't be broken (unless you did something really stupid when making the OTP). If we don't have the storage for this, we need to find a way to re-use the OTP and make due with security that for all practical purposes is unbreakable. So you use PRNG (pseudo-random) techniques to effectively re-use the OTP. With previously-agreed on secret seeds and a big truly random data source, this won't be something you just pattern-recognize your way through with ease. It is certainly a lot better than just starting over from the start of the OTP. Also, if pattern recognition was that easy then it would break public key encryption schemes much faster than this (oh wait, in SR4 they do break encryption fast :D) |
||||
|
|
|||||
Aug 21 2006, 02:43 PM
Post
#22
|
|
|
panda! ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 10,331 Joined: 8-March 02 From: north of central europe Member No.: 2,242 |
ah, the age old one-time pad, when will the debate ever stop?
|
|
|
|
Aug 21 2006, 02:48 PM
Post
#23
|
|||
|
Moving Target ![]() ![]() Group: Members Posts: 881 Joined: 31-July 06 From: Denmark Member No.: 8,995 |
When they are implemented in the rules? :D |
||
|
|
|||
Aug 21 2006, 02:50 PM
Post
#24
|
|||
|
Runner ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 2,925 Joined: 26-February 02 Member No.: 948 |
Of course they will, if they HACK the signal and monitors EVERYTHING. This example would only be done to make simple SPOOF commands harder. If one have already cut through the encryption and monitors everything one might as well hack the drone and take it over. Spoofing a command will not make YOU the other persona, you will only fake that persona for the time it takes you to give a fake order - it will not continue to make communications with you. Spoof command can be sent in combat and you will (most of the time) not have time to hack a drone in combat - spoofing is the quicky that makes drones go bonkers. :grinbig: Hacking a drone will almost always succeed, making spoofing a little harder is something else. |
||
|
|
|||
Aug 21 2006, 03:10 PM
Post
#25
|
|||||
|
Moving Target ![]() ![]() Group: Members Posts: 881 Joined: 31-July 06 From: Denmark Member No.: 8,995 |
You don't have to hack the signal. We're talking wireless signals here. Unless you've cut through the encryption, you won't be spoofing anything to begin with. If you don't know the commcode of both the drone and the rigger you won't be spoofing anything either, and if you got that, then you will be picking up everything transmitted between them if you want to. |
||||
|
|
|||||
![]() ![]() |
|
Lo-Fi Version | Time is now: 31st July 2026 - 10:32 AM |
Topps, Inc has sole ownership of the names, logo, artwork, marks, photographs, sounds, audio, video and/or any proprietary material used in connection with the game Shadowrun. Topps, Inc has granted permission to the Dumpshock Forums to use such names, logos, artwork, marks and/or any proprietary materials for promotional and informational purposes on its website but does not endorse, and is not affiliated with the Dumpshock Forums in any official capacity whatsoever.