move int_from_bytes so we can use it elsewhere
diff --git a/src/cryptography/utils.py b/src/cryptography/utils.py
index 0bf8c0e..24afe61 100644
--- a/src/cryptography/utils.py
+++ b/src/cryptography/utils.py
@@ -6,6 +6,7 @@
 
 import abc
 import inspect
+import struct
 import sys
 import warnings
 
@@ -25,6 +26,26 @@
     return register_decorator
 
 
+if hasattr(int, "from_bytes"):
+    int_from_bytes = int.from_bytes
+else:
+    def int_from_bytes(data, byteorder, signed=False):
+        assert byteorder == 'big'
+        assert not signed
+
+        if len(data) % 4 != 0:
+            data = (b'\x00' * (4 - (len(data) % 4))) + data
+
+        result = 0
+
+        while len(data) > 0:
+            digit, = struct.unpack('>I', data[:4])
+            result = (result << 32) + digit
+            data = data[4:]
+
+        return result
+
+
 class InterfaceNotImplemented(Exception):
     pass