capcah
Furthermore, this algorithm is equivalent to a DH key exchange between A and B followed by a HMAC(key,M), with the advantage that message size is not limited to the group size.
I'm not from USA, and on the last time I visited it, I noticed how recklessly people drive on the highways, most of them were on the phone, eating, or doing something else(there was even a lady fixing her hair with her right hand, talking on the cellphone with her left hand and holding the steering wheel with her elbow, that freaked me out).
If those people behave the same driving on a street, I can see that being the cause of the majority of accidents, since the reaction time for events will be smaller, since most occurrences happen within a few meters of the car.
Finally, I know that this is not the focus of the article, but the USA cities need to focus more on the people that either cannot or will not(like me) drive. LA, LV and Miami, for instance, were pretty hellish until I finally gave in and rented a car, with poor public transportation and pedestrian access.
Let's not forget that the android can offer advanced functionality that Apple seems to refuse to offer on its devices: access to a local file system, ability to work as an USB stick(it's even possible to have your phone work as a boot stick), being able to turn its wireless card into monitor mode for mobile sniffing.
Last, but not least: Waterproofness and mechanical resistance. Apple seems to have forgotten these two points on the iPhone, even though they already have a good starting point(phone with no removable battery).
So, yeah, I don't think apple will win over the premium market that easily.
EDIT: Adjusting newlines, forgot that newfags can't triforce.
ii) prove that n^2 = 1(mod 8). Enumerating, n = {1,3,-3,-1} (mod 8) [ n != pair (mod 8) since then, it would be divisible by 2]. n^2 = {1,9,9,1} (mod 8) => n^2 = {1,8+1}(mod 8) => n^2 = 1 (mod 8). Exists k such that n^2 - 1 = k8.
iii) There exists 2 integers m,k such that k8 = m3. m must have an 8 factor and k a 3 factor. Then, there exists j such that j = m/8 = k/3 = (n^2-1)/24. qed.
As I said, I am not sure that is right or if that was the method used to exploit cloudflare, as I didn't had the time nor the knowledge of openssl implementation to test it out, I am just throwing my guess out there before the official exploit comes about.
edit: formatting
One of the perks of FP is that it exposes pure functions, functions that have a fixed output for a given input. Since it's really bad at storing and mutating state(canonically can only be done via monads), it encourages you to separate your code into pure and mutable states. Let's take, for instance, a function that reads a file and xor's that with a random byte stream. A non functional approach would be something like this:
void xor_file_stream(file input, stream random_stream){
result = []
file_byte = read_byte(input)
while(file_byte != EOF){
stream_byte = read_byte(random_stream)
res.append(file_byte^stream_byte)
file_byte = read_byte(input)
}return result
}
A possible way to write the same function using FP, using currying[1] and map[2](a fundamental construct in FP), one can write the code as this: byte xor(byte b1, byte b2){
return byte(byte b2){
return b1^b2
}
}
//Here I assume the language has file and random_stream as iterables
void xor_file_stream(file input,stream random_stream){
return map(map(xor,random_stream),input)
}
While, in a naive implementation, this would be much slower than the procedural implementation, there are much stronger assumptions one can make in respect to the functions while optimizing the compiler. First, the function xor is a pure function with 2^9 possible input values, and can be substituted by a precomputed lookup table, speeding up the map function. Since the function is guaranteed not to hold state, one can also unroll the map loops, or paralelize it if needed.But remember that most "pure" FP languages are bad at keeping state, turning a huge game(for instance) into a challenge both to the programmer and to the compiler.
[1] - http://en.wikipedia.org/wiki/Currying
[2] - http://en.wikipedia.org/wiki/Map_%28higher-order_function%29
EDIT: Formmating, not used to posting to hackernews comments