I hereby claim:
- I am martani on github.
- I am martani (https://keybase.io/martani) on keybase.
- I have a public key whose fingerprint is 44CE 0F6C 84E2 CA9C 0B0B 643E E05E 0DD5 E21E 38D5
To claim this, I am signing this object:
| // See: https://medium.com/@TwitterArchiveEraser/notarize-electron-apps-7a5f988406db | |
| const fs = require('fs'); | |
| const path = require('path'); | |
| var electron_notarize = require('electron-notarize'); | |
| module.exports = async function (params) { | |
| // Only notarize the app on Mac OS only. | |
| if (process.platform !== 'darwin') { | |
| return; |
I hereby claim:
To claim this, I am signing this object:
| //Append this function to class Indexer. | |
| template <typename Matrix> | |
| void spliceToAB(Matrix& M, Matrix& A, Matrix& B) | |
| { | |
| typename Matrix::Row::const_iterator it; | |
| // Splice M into two submatrices A and B, A contains pivot columns, B contains non pivot colums. | |
| uint32 curr_piv = 0; |
| //Class implements ICBCOracle | |
| public class OnlineCBCOracle : ICBCOracle | |
| { | |
| public bool RequestOracle(byte[] cipher) | |
| { | |
| const string BASE_URL = "ORACLE_URL?er="; | |
| string urlData = Helpers.ConvertByteArrayToHexString(cipher); | |
| WebClient wc = new WebClient(); | |
| try |
| //The Oracle | |
| ICBCOracle cbcOracle = new Oracles.OnlineCBCOracle(); | |
| //The attacker, passing the Oracle to constructor | |
| PaddingOracleAttacker attacker = new PaddingOracleAttacker(cbcOracle); | |
| //Prepare the ciphertext | |
| string cipherHex = "f20bdba6ff29eed7b046d1df9fb7000058b1ffb4210a580f748"; | |
| byte[] cipher = Helpers.ConvertHexStringToByteArray(cipherHex); |
| private static byte[] AES_Decrypt_block(byte[] cipherText, byte[] Key) | |
| { | |
| // Declare the string used to hold the decrypted text. | |
| byte[] output_buffer = new byte[cipherText.Length]; | |
| using (AesManaged aesAlg = new AesManaged()) | |
| { | |
| //If CBC, must initialize IV = O_{128} | |
| //aesAlg.Mode = CipherMode.CBC; | |
| //aesAlg.IV = new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; |
| private static byte[] AES_Decrypt_block(byte[] cipherText, byte[] Key) | |
| { | |
| // Declare the string used to hold the decrypted text. | |
| byte[] output_buffer = new byte[cipherText.Length]; | |
| using (AesManaged aesAlg = new AesManaged()) | |
| { | |
| //If CBC, must initialize IV = O_{128} | |
| //aesAlg.Mode = CipherMode.CBC; | |
| //aesAlg.IV = new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; |
| <<intel i7 for all tests>> | |
| N = 676292275716558246502605230897191366469551764092181362779759 (60 digits | 199 bits) | |
| Time = 16.76 minutes (~ 17 hours on centralized version) | |
| N = 1522666296953962938975648266957818297826962898780435311 (55 digits | 180 bits) | |
| Time = 7.178 minutes | |
| N = 5705979550618670446308578858542675373983 (40 digits | 133 bis) | |
| Time = 5 seconds |
| <<intel i7>> | |
| N = 676292275716558246502605230897191366469551764092181362779759 (60 digits | 199 bits) | |
| Time = ~17 hours | |
| <<intel i3>> | |
| N = 139920333957092418127239064840267210440539 (42 digits | 137 bits) | |
| Time = 66 minutes | |
| <<intel i7>> | |
| N = 5705979550618670446308578858542675373983 (40 digits | 133 bits) |
| $ ./pollard-rho 18446744073709551617 | |
| Factoring 18446744073709551617 .. | |
| Testing GCD: 274177 | |
| Found divisor g = 274177 in 901 steps [0.004 s] | |
| $ ./pollard-rho 10023859281455311421 | |
| Factoring 10023859281455311421 .. | |
| Testing GCD: 1308520867 | |
| Found divisor g = 1308520867 in 25601 steps [0.037 s] |