Having only 1,000,000 possible combinations, an encrypted zip-file with a 6-digit numeric password, could be brute force cracked within a second. But for an iphone (let's say iOS9 if it matters), it is said that it would take years to do so. Of course there is the time-lock that restricts password attempts after a few failures. But I think there should be a way, by using an external device, to copy the encrypted iphone's data(the combination of 0s and 1s in the entire hardware) to bypass such 'software' restrictons. Would it still be tough to crack the data? If so why is it so much harder than cracking a 6-digit numeric passworded zip-file?
This depends on the hashing or encryption algorithm, and the hardware as well.
Again, this depends on the hardware and algorithms used, and whether it's a
You are trying to compare breaking the password on an offline zip file, whose brute force protections (if they even exist) can be circumvented by simply writing your own unzip utility, to the breaking of a password on an iPhone's lock screen which stops you after 10 incorrect attempts. The two are entirely different concepts and problems, but they do seem somewhat similar, I'll give you that.
Regarding the last part, please read Rory McCune's link.
Is there any hope to crack "impossible" encryption?
While some news articles are reporting that it's impossible to break the encryption of the iPhone, and "even the NSA can't do it," I'd take it with a grain of salt as this is a red herring.
Who cares about your
Instead of unlocking the heavily-fortified front door that's capable of withstanding tremendous punishment, what if you could just break the window and climb in? A vulnerability that allows you to run malicious code, which in turn allows you to view the actions of a user in real-time, and access the contents of their device, is the new frontier. If you can compromise any device, either
In a classic approach, you can have the data encrypted by a long and secure random key that is not vulnerable to any brute force attacks, and have that long key stored within a secure chip that will disclose (or apply) that key only when presented with a PIN code under certain conditions that include a rate-limiting of how frequently PINs can be attempted and destroy the key upon a certain number of attempts.
If properly implemented, such chips are secure from any non-destructive attacks; often the data might be read by disassembling/destroying the chip and analysing its contents with an electron microscope but that is a rather tricky, costly, slow and non-scalable manual process that's also not guaranteed to succeed.
There are various "tricks" to make decryption of an iPhone harder.
One is that part of the decryption key is stored in the CPU of the iPhone, different for every iPhone, and not accessible by anyone, including Apple. That means if you remove the flash drive from the phone and connect it to the worlds fastest supercomputer, that supercomputer has to crack 256 bit encryption, because guessing the passcode doesn't work anymore. And cracking 256 bit encryption is just not possible.
The other is that Apple deliberately makes the act of checking a password slow. Your passcode will be re-hashed repeatedly. And by repeatedly, I mean millions of times. The actual number depends on the phone; it is calibrated so that checking a passcode will always take about 1/10th of a second. That's fast enough not to affect the user, but checking a million passcodes will take 100,000 seconds or a bit over a day.
That's assuming that you can actually run code on the iPhone that checks a million passcodes, which you can't, because only code signed by Apple gets access to the hardware that is needed for checking a passcode. Basically, only the software that runs when you tap in your passcode.