archive-fr.com » FR » N » NICOLASPOUILLARD.FR

Total: 307

Choose link from "Titles, links and description words view":

Or switch to "Titles and links view".

  • Student Supervision Jesper Borgstrup s Master Thesis Private Trustless and Decentralized Message Consensus and Voting Schemes PDF Jesper s page Publications Names For Free Polymorphic Views of Names and Binders with Jean Philippe Bernardy Haskell Symposium 2013 PDF A unified treatment of syntax with binders with François Pottier JFP Vol 22 PDF TeX PhD Thesis Namely Painless A unifying approach to safe programming with first order syntax with binders PDF Agda Development Namely Painless The NomPa library Agda Sources Agda Sources Archive Nameless Painless ICFP 2011 PDF Agda Sources Agda Sources Archive Haskell Haskell Document Archive LaTeX A Fresh Look at Programming With Names and Binders with François Pottier ICFP 2010 Talks Programing with Linear Types a tutorial 2015 AIM Göteborg HTML Markdown Breach In Agda security notions proofs and attacks using dependently typed functional programming 2013 30c3 Hamburg HTML Markdown Names For Free Polymorphic Views of Names and Binders Haskell Symposium 2013 HTML Markdown CSS Build fun universe Tracking space and time through a restricted universe AIMXVI HTML Markdown Binder representations in Agda Invited talk at LFMTP 2012 co located with ICFP HTML Agda Archive PhD defense Namely Painless A unifying approach to safe programming with first order syntax with binders Paris 7 University PDF PDF fr Haskell Namely Painless At Marburg University Programming Languages and Software Technology Group PDF Haskell Nameless Painless ICFP 2011 in Tokyo Japan PDF Haskell A Fresh Look at Programming with Names and Binders ICFP 2010 in Baltimore Maryland PDF Haskell Document Archive Meta programming tutorial at CUFP 2010 PDF Haskell A Fresh Look at Programming with Names and Binders Gallium seminar May 2010 PDF LaTeX Haskell Document Archive Not So Fresh ML CANS 2009 PDF LaTeX Haskell Document Archive Distributed versioning Darcs Distributed versioning for everyone PDF trans PDF LaTeX rslide OCaml re FL ect and overloading Overloading searching for alternatives PDF HTML rslide Events AIMXVI I co organized the 16th editon of AIM Agda Intensive Implementors Meeting If you are interested in type theory hacking consider joining the next edition of this meeting Posters Vers des langages plus expressifs et plus sûrs pour la méta programmation forum DIGITEO 2011 PDF Haskell Unpublished papers Counting on Type Isomorphisms with Daniel Gustafsson superseded by Foldable containers and dependent types PDF Experience report Mirroring reFLect to OCaml with Michel Mauny Submitted to ICFP 2009 PDF Personal interests non exhaustive Technical Agda a Type Theory and dependently typed programming language Haskell an advanced purely functional programming language Bitcoin an innovative payment network and a new kind of money decentralized currency Tox P2P distributed multimedia messenger secure easy decentralized instant messaging and video conferencing Bitmessage a P2P communications protocol secure anonymous decentralized and trustless Namecoin a secure general purpose p2p key value storage system DNS replacement NixOS a purely functional linux distribution Tor Anonymity Online Social Freedom Free speech free press Privacy Agda Hacking crypto agda A library for defining cryptographic schemes and proving security properties crypto agda on GitHub As part of this project there is

    Original URL path: http://nicolaspouillard.fr/ (2015-10-11)
    Open archived version from archive



  • 2K6vI 55u vPzZf482NRl1YclGi5L2m2vhn f fwlHyTNxFSnmdAGgmm na5Mic1ezLUCZxxbS RYV2w0VHTHaD iFXwdRnFM zn5ryLWpB9OAYymcnhM19nJPzKnHgHmpt AO73Sz7 j5MHafPxLuj kWex583aY0HC1noUkhYFc89eK0TrhBKUI4EkhGNocqIPflPrQ7C coXjL2RNS9Ou6 5JqX pb5CI1vuK WY52H5TfFV4MGgAfmDXDKKJ5fu 3WETWq H DiDmUpc saxEjhBG O8ZIvzLv2Dd0EhxaA k4y6JK7q zlt6Tbcw7TaJ1XsEx5WI RgQQEQIABgUCTcO2 wAKCRCP4UI3D13AuS CAJ9J3X1FIpfs6UGUzxaZVCFyrq n 7wCgioBiRv2S g74RsW1I7iBI 6vAyCIRgQTEQIABgUCTdocfAAKCRBQ8eWQWbgv nxViAKCdWrAE l7A3bnWnDSVhG mjTBPbACgkkt5uNOitx0YeQ4Hbe9hqfkE0imJ ARwEEwECAAYFAk3aZPcACgkQYegaURjUaMVZTwf Xd782j2Q t2ywxYyf7cyjhz jBvxiDDo1WhCdwXC 4dqbpzdFNDrIhssnuc1US0nWk TAlXbYm 8 RK0ev3TO9XB SLM4v4qloxc H3WGXebB2t18KC6CHbCXlcDOCJ8drpJ2qHxPXA 3wjQFBozq2ZoC P96V tkvlygG3RvNp8DgujzJDtakUnDC822rXSOXbgTO3DRyjgi kES6edBuhgB 59N8ICQ0ISxjuvSnrs4LomGLBz mdzQyeA66OUI2NEUe0i2ZmJJz38E78pp v9pN Mt5WlEnaKnIgWXMrW7Z 30AI5XsRjysk8Jy0RRQSmvRYPrEgZB1sGnIa4Sh0 7Qq Tmljb2xhcyBQb3VpbGxhcmQgPG5wQG5pY29sYXNwb3VpbGxhcmQuZnI iQE4BBMB AgAiBQJOiUgpAhsDBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRCIJvpWV 9s oFF5B 4ttRh9DILKekGuhesH 5 FP7AWVQ GcyiYjzWusQLxsxb5oKu4mgkOxvh9 ud RUhYM53NihSFvuepahL PlbnjqN7MG8ybn9e 8DwT2Ew6dmGmM0tx5py oR8s raJoxpnBOeVxEONWU0 HUcCdgAOCrCNy0qUWQMX bsgDyWcHm8d4Tcb4vjjeDyyl

    Original URL path: http://nicolaspouillard.fr/gpgpubkey.txt (2015-10-11)
    Open archived version from archive


  • AQLCQgHAhUI BRYCAwEAAAoJEI hQjcPXcC5Q8YAnA4cGSapqiUVlo4hM2S6R5YelCFoAKCUukqq 3IG7jz77ZxFRX8gd9AHK2IhGBBMRAgAGBQJBoHIlAAoJEHPPoJmz2HT8I0cAnRc6 oDHu2l OSA9HV qqWAfJ5fT4AJ4lXu3LqA1z JR5OPEcfLNaJObKFIheBBMRAgAe BQJAklo4AhsDBgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJEI hQjcPXcC5t8sAn334 HswH0qRBeBPbcQf svGbcPlKAJ4wcMYAilH yY4vocrdB12epulsohhBBMRAgAh AhsDBgsJCAcDAgMVAgMDFgIBAh4BAheABQJBoHX9AhkBAAoJEI hQjcPXcC5Er8A nRZaCdCtw4gIHru55Di8QzC8kS0 AJ9oJbdHLOVYkZZ2O6SPTdx5Xl uZ4hGBBMR AgAGBQJCPK iAAoJEMu 03qqP02EqXYAn0y8ZAr w9SLipAVvvvQ8Y yrqU4AJ93 dw4QwuBr9PzQEY2JL5aB62cjcYhGBBMRAgAGBQJDOTgBAAoJEAPGwoRvjm3QShQA n2tnbkyyXLPGAFwkp2L03 MBANbhAJwJGN8mels3fffpCs4ZyUD4gC0XpohGBBAR AgAGBQJDOmOkAAoJEJpmcTb0wgV6vbQAoJ2 xh25Qbm0WXkPEBIRSul8uj1IAKC2 rRel6QGJtnpzr4s9SVwlignuF7QtTmljb2xhcyBQb3VpbGxhcmQgKEVydGFpKSA8 ZXJ0YWk0MkBnbWFpbC5jb20 iFwEExECAB0CGwMCHgECF4AFAkkVy wECwkIBwIV CAUWAgMBAAAKCRCP4UI3D13AuUI AJizBsrxaU4MjmdzPU3mTLKYIWErAJ98X6k6 VJrCnytUJsqL94eWluJ75IhGBBMRAgAGBQJBpl7DAAoJEHPPoJmz2HT8eXgAnjfa DHstL4mBEMo74QHb4swodQD9AKCFTvBJ5dC1IkSlxijB XjQ1Is5JYhGBBMRAgAG BQJCPK iAAoJEMu 03qqP02EVTAAnR3p2LH0yrYg2MVB81MXFPjGFX7gAJ435wkm ENH4J3Ij7aJHWg0MLP7TV4hGBBMRAgAGBQJDOTgAAAoJEAPGwoRvjm3QS9gAnjqo BWpI6MCOOqbec2kXtVLHd3QhAJ44H16WkiLRtmHUpNXTMu7R8hbxWohGBBARAgAG BQJDOmOjAAoJEJpmcTb0wgV62BMAoLKpEOjr0tvbt0IrkX7MgqeOat2EAJ0aZrx0 OO12U7TCRvgpFiwpdMPebQ2Tmljb2xhcyBQb3VpbGxhcmQgKEVydGFpKSA8bmlj b2xhcy5wb3VpbGxhcmRAZXBpdGEuZnI iF0EExECAB0CGwMCHgECF4AFAkkVy wE CwkIBwIVCAUWAgMBAAAKCRCP4UI3D13AuZUTAJ9PRqrTtqQzfXVovlAC7u4VvzCA 0ACfZ8EGwGEOFc2IthpZy0n3pbfdxDaIRgQTEQIABgUCQaByIAAKCRBzz6CZs9h0 F3yAJ49d3k1hOKzB7wqXOLxGc4OoxcLTgCffvmqIolfZhZJDrRShzlB1DQWeFCI RgQTEQIABgUCQjyvogAKCRDLvtN6qj9NhPWjAJ9bWLVExQRPfLsbxj3RMyN5O9Jd tgCfYBRS4wO1n2ymyIZnpMuiqFf 2pCIRgQTEQIABgUCQzk4AQAKCRADxsKEb45t 0KCaAJ9rWEjbbq2yqb4ZqBHAbpv3XhswiQCfQtps qY1P7y ckZs 5V wWNsRCeI RgQQEQIABgUCQzpjpAAKCRCaZnE29MIFetKdAJ9R Bc4zoWQNXlWib0Tw6SaauIY nQCeIZmlr0 ZXj tSUJ4qvMrGy AQnm0O05pY29sYXMgUG91aWxsYXJkIChFcnRh aSkgPG5pY29sYXMucG91aWxsYXJkQGxyZGUuZXBpdGEuZnI iF0EExECAB0CGwMC HgECF4AFAkkVy wECwkIBwIVCAUWAgMBAAAKCRCP4UI3D13AucA3AJ9sLThFN64H LeOMN0X2R0Ev6lQhpwCeNcEWoUOJQ8rDUGwSei2oYiLZiqWIRgQTEQIABgUCQaBy JQAKCRBzz6CZs9h0 IMoAJ95gGAw74JdIhRGkK717GyMIGUW8gCfQ1FLSdUeykR5 K2 6ggm6wzhjpcmIRgQTEQIABgUCQjyvogAKCRDLvtN6qj9NhDRWAJ9XBjUebBIC GENcjwpBndGic5VE4QCgpFYyhe07mzEfeTy4 9Yw WYUMSKIRgQTEQIABgUCQzk4 AQAKCRADxsKEb45t0GGmAJ9Jxh30jeDaE5JpQwszgX1JSHK0BgCghApVt h5aHBK obvEtOJ63LwPAeqIRgQQEQIABgUCQzpjpAAKCRCaZnE29MIFegj AJ4wKN57qXqW KjngeJcC 983tPT4TQCfZCRzhACMKFbJ1Hrlsu4 lf Ikiy0Mk5pY29sYXMgUG91 aWxsYXJkIChFcnRhaSkgPHBvdWlsbF9uQGxyZGUuZXBpdGEuZnI iF0EExECAB0C GwMCHgECF4AFAkkVy wECwkIBwIVCAUWAgMBAAAKCRCP4UI3D13AuTNkAJ9cxm L GY7m WvZxegkVMw bjxC1gCgk iXeUtbBLv0pBOa5sKFq5PqWpqIRgQTEQIABgUC QaByJQAKCRBzz6CZs9h0 PG3AJ9fiqyZcxYvKLqN6nhm5iv0KD BDgCePwlBgK2w SGWSLKLm7S1UzDqJlYuIRgQTEQIABgUCQjyvogAKCRDLvtN6qj9NhLZvAJ4mefKb R1H1I2Q3kWREpEFZ1KIUrACfYpD IFUgAYLS7OSMxiIxCO9ABZeIRgQTEQIABgUC Qzk4AQAKCRADxsKEb45t0KbsAJ0ZtX1ba7 bC7llWhOPe5DLVz0ZRACfby sFpfv diuzQmVKFIeDKIjsSYyIRgQQEQIABgUCQzpjpAAKCRCaZnE29MIFes70AJ9wkeFu 69oH3xaQAILi7wMjHWbRQCglyGFiTGhzHdsN6w3caT6tyYj6cm0LU5pY29sYXMg UG91aWxsYXJkIChFcnRhaSkgPHBvdWlsbF9uQGVwaXRhLmZyPohdBBMRAgAdAhsD Ah4BAheABQJJFcv8BAsJCAcCFQgFFgIDAQAACgkQj FCNw9dwLlYlACdFUV93zwA YGkIVJ557AuMn1Xx6CoAoI Tlr8nFltflOsxebnhV Lh2LXMiEYEExECAAYFAkGg ciUACgkQc8 gmbPYdPw0ygCfa4ciR9dc 5PZ0neN0xNISGyXaXAAn0gKWKNRama EottFbqHDvkVt2HviEYEExECAAYFAkI8r6IACgkQy77Teqo TYTErgCfYMKiDRE oHNBrvwGEb4ReRuj5VsAmweO7j8ocrHZM49ExQ0d8drLmh9RiEYEExECAAYFAkM5 OAAACgkQA8bChG ObdBneQCdGY5U nIXMKeIVMtcHi7L08ryuJEAn1LLxd8nP0 P 6UXvI8134HNv8FlviEYEEBECAAYFAkM6Y6QACgkQmmZxNvTCBXqPjwCeMeMhvy6P cQtFr l2ZhR1e0Ln2g4Anja6lS1tuMHslSwQeb10WqGTIP9LtC9OaWNvbGFzIFBv dWlsbGFyZCAoRXJ0YWkpIDxlcnRhaUBoZXhhZ2xvYmUuY29tPohdBBMRAgAdAhsD Ah4BAheABQJJFcv8BAsJCAcCFQgFFgIDAQAACgkQj FCNw9dwLmkKACfdDE2gBa7 6Ffwxe67XAiiKUhz23gAn0cekrJ7x9q4piqdOIVfPg6Qmy0eiEYEExECAAYFAkGm XskACgkQc8 gmbPYdPzLNgCfYiRuxlGgECYyk7hgdAKAl1IlwbQAnibHOc43 qqw 1ni9Sv3WPdweTxO iEYEExECAAYFAkI8r6IACgkQy77Teqo TYQL1QCeIp fdvP8 kTDChQ7Z6BtAoVnCWCwAn1 WUVVUuI9jXeLF5CPA4WTfqxS2iEYEExECAAYFAkM5 OAAACgkQA8bChG ObdC7sQCfWZAhx1qsprtzp9Y9HMhmmwR3XAgAoISGPmwAObcY Gx6jOozSxlael3agiEYEEBECAAYFAkM6Y6QACgkQmmZxNvTCBXoATACgnOi7ixB snLfbBDPTQSmF4ukpoAAniljz3mAlefp3oRuGr5Olo9gn03ntDtOaWNvbGFzIFBv dWlsbGFyZCAoRXJ0YWkpIDxuaWNvbGFzLnBvdWlsbGFyZEBoZXhhZ2xvYmUuY29t PohdBBMRAgAdAhsDAh4BAheABQJJFcv9BAsJCAcCFQgFFgIDAQAACgkQj FCNw9d wLn 4gCghJz nGNSRrvRmyp gsI0 1RFoAn0UI3qr2sV3fVUPKTQIcmRAWGviQ iEYEExECAAYFAkGmXskACgkQc8 gmbPYdPw9hgCfbjJHswAvjiFQ3pMkV3EuBUEb fO8AnRWBPkUmy6u rErEsSxx BOlrcSAiEYEExECAAYFAkI8r6IACgkQy77Teqo TYTzNgCdE3RQgcbTmpIFqLiyj LIz0hxiTcAnRe1tjBEAfYnpjYSSG2fJbffrRhg iEYEExECAAYFAkM5OAEACgkQA8bChG ObdA QgCcDOheXSPutMwhBkL0GoegZXCd ZHkAn0dXeiC8EqgPK2riwvNJKQQXA NbiEYEEBECAAYFAkM6Y6QACgkQmmZxNvTC BXrbQACdHOvFXP T NqxOJT2 kNv3quHKOYAoIJadGPabQjddfEyscYTNobSO5Ur tDtOaWNvbGFzIFBvdWlsbGFyZCAoRXJ0YWkpIDxuaWNvbGFzLnBvdWlsbGFyZEBm ZXlkYWtpbnMub3JnPohdBBMRAgAdAhsDAh4BAheABQJJFcv9BAsJCAcCFQgFFgID AQAACgkQj FCNw9dwLmBQgCfUiltV1tV5vprlZUtUMjvXH 8AngAnihmPkng6WBU 2zr0nycbbBCCtKepiEYEExECAAYFAkI8r6IACgkQy77Teqo TYSnHACgp6 Mu25U 1wwGW9aFFIkcxeXPWAgAnA61xhOWTmV6fNE1yTO U 26uToviEYEExECAAYFAkM5 OAEACgkQA8bChG ObdDAbACfYX0z9VQ cCT3HyvEONBbh1h0LzoAoIQzfEwiLCtO QJNJGLGRzeNn WJJiEYEEBECAAYFAkM6Y6QACgkQmmZxNvTCBXrpkwCfZ5E4SSIa PtWIeUTz0ztO Na4noAAn2 lhesbOcWf7edXVTbfh aU nBltC9Qb3VpbGxhcmQg Tmljb2xhcyAoRXJ0YWkpIDxlcnRhaUBscmRlLmVwaXRhLmZyPohdBBMRAgAdAhsD Ah4BAheABQJJFcv9BAsJCAcCFQgFFgIDAQAACgkQj FCNw9dwLm9egCgmWh8tsq aPt0Q8ymn7vunt1eXvkAnA odIOfSDnKbmeKxpI8GFyXANQWiEYEExECAAYFAkM5 OAEACgkQA8bChG ObdBoDQCfRumYdnQoMAIW0eL9Q0656rkM eMAniuDN0fHXzDg In0uMNUhgwmrdBSgiEYEExECAAYFAkGgciUACgkQc8 gmbPYdPw 4QCdH4Ji6MdV JS3Vd8MmUXmKiG2oGwcAmQG2fxx23nkDYpxjF8LWaGHkVmlTiEYEExECAAYFAkCS VY0ACgkQDWrzO7neGefkngCfdc4E6vHSfuG305stbCBIEJ2Un9YAnR7 1WfD4dHD wCg

    Original URL path: http://nicolaspouillard.fr/old-gpgpubkey.txt (2015-10-11)
    Open archived version from archive


  • 326B FF50 7855 62A4 AC88 55CF 8826 FA56 57EF 6CA0 IRC login npouillard networks freenode OFTC OTR fingerprint F2B8B602 0F30695D 71FE2410 D963C801 D539759D Bitcoin 1npouk6pkBXLHLQaLVqwfxFM2phkVqX7j Namecoin N1co19XjRMY7YniwR7sns18da1JVNG6q7F Ripple rUnvX8wZn7PJYXwRMcKQL5hwB9CQK2gxNM github com np twitter com npouillard gmail com nicolas pouillard demtech

    Original URL path: http://nicolaspouillard.fr/fpr.txt (2015-10-11)
    Open archived version from archive

  • ling
    recv r n A P send s t Q is equivalent to the process P n t Q where one substituted t for n in P The parallel composition of processes is commutative and associative which is a quite important property More formally for all processes P Q and R P Q is equivalent to Q P and P Q R is equivalent to P Q R One can thus compose processes with no particular nesting P Q R S Sending two results Our next example is a simple server to compute division and modulus of two Int In contrast to functional programming there is no need to package the two result as a single one using a tuple Actually this might look like an imperative program where two addresses are given to write the two results instead of returning them These processes are actually a lot more functional that they look like and enjoy similar properties div mod server rm Int rn Int sdiv Int smod Int recv rm m Int recv rn n Int send sdiv m n send smod m n Sending two results in parallel Exchanging the order of the two recv commands yields to an equivalent process Similarily with exchanging the send commands One can even compose them in parallel div mod server explicit prll rm Int rn Int sdiv Int smod Int recv rn n Int recv rm m Int send sdiv m n send smod m n Continued sessions imposing a strict processing order div mod server cont c Int Int Int Int recv c m Int recv c n Int send c m n send c m n Sequences Fixed left to right processing order div mod server seq4 c Int Int Int Int c rm rn sdiv smod recv rm m Int recv rn n Int send sdiv m n send smod m n No flexibility It has to be in this order Par You control the processing order div mod server par4 c Int Int Int Int c rm rn sdiv smod recv rm m Int recv rn n Int send sdiv m n send smod m n Same flexibility as in div mod server Tensor You have to be ready for any processing order div mod server par3 ten2 c Int Int Int Int c rm rn s s sdiv smod recv rm m Int recv rn n Int send sdiv m n send smod m n s sdiv smod and the recv can commute The two send must be in parallel Forwarders If we have a channel c following a session S and a channel d following session S the dual of S and for which c and d are allowed to be used together then one can define a process forwarding data back and forth between c and d For instance let have the session S be Int Int Int fwd send recv recv c Int Int Int d Int Int Int recv d x Int send

    Original URL path: http://nicolaspouillard.fr/talks/ling-AIM/main.html (2015-10-11)
    Open archived version from archive

  • BREACH in Agda
    The adversary returns the message m₀ and m₁ m R ₐ PubKey Message ² In the step b the adversary receives the same randomness supply and public key as in step m and receives the ciphertext computed by the challenger The adversary has to guess which message m₀ or m₁ has been encrypted b R ₐ PubKey CipherText Bit Deterministic Encryption Attack module Det Enc Attack rₐ R ₐ pk PubKey where m Message ² m₀ and m₁ have to be different b CipherText Bit b c c Enc pk m₁ Proof sketch b Enc pk m b Enc pk m b Enc pk m₁ b 1 b Randomness is paramount How to defeat this attack Encryption should be randomized hence non deterministic The function Enc actually takes an extra parameter containing the necessary randomness Textbook RSA encryption RSA Enc e n m mᵉ mod n Is RSA insecure IND CPA attack game The game step by step pk key generation only the public key is needed mb send randomness public key and bit receive which message to encrypt c encrypt the message b send randomness public key and ciphertext receive the guess from the adversary EXP Bit Adversary R Bit EXP b A rₐ rₖ rₑ res where module A Adversary A pk proj₁ KeyGen rₖ mb A m rₐ pk b c Enc pk mb rₑ res A b rₐ pk c game Adversary Bit R Bit game A b r b EXP b A r Size Leak Attack module Size Leak Attack rₐ R ₑ pk PubKey where m Message ² m₀ and m₁ have to be of a different size b CipherText Bit b c size c size Enc pk m₁ rₐ Proof sketch b Enc pk m b rₑ size Enc pk m b rₑ size Enc pk m₁ rₐ size m b size m₁ b 1 b Size matters IND CPA actually requires the two messages to be of the same size Encryption Compression Compression AFTER Encryption Useless Compression after encryption is fruitless since encrypted data looks like random and random can t be well compressed Encryption AFTER Compression CEnc PubKey Message R ₑ CipherText CEnc pk m rₑ Enc pk compress m rₑ Brök3n Compression Oracle Attack module Compression Oracle rₐ R ₐ pk PubKey where m Message ² m₀ and m₁ have to be of the same size while compress to a different size b CipherText Bit b c size c size CEnc pk m₁ rₐ Proof sketch b CEnc pk m b rₑ size CEnc pk m b rₑ size CEnc pk m₁ rₐ size Enc pk compress m b rₑ size Enc pk compress m₁ rₐ size compress m b size compress m₁ b 1 b Compression side channel attack Assume any compression scheme which Can map two messages of the same size to compressed messages of different size Assume any encryption scheme which Is IND CPA secure Leaks the size of the plain text message Cipher text size does

    Original URL path: http://nicolaspouillard.fr/talks/breach-in-agda-30c3/breach.html (2015-10-11)
    Open archived version from archive

  • Names For Free
    Succ a Concretises an abstraction with your given name value atVar f a v Functor f f Succ a v f a v Builds an abstraction with your given name pack f a v Functor f v f a v f Succ a Opens an abstraction and provides you with a name and a body unpack f a r f Succ a v v f a v r r Weakens a Term Functor wk f a b Functor f a b f a f b Test occurrences across different scopes isOccurrenceOf a v Eq a v a a v Bool Customize lam a v v Tm a v Tm a lam f Lam mkAbs f Same as Lam f lamP v a v Tm a v Tm a lamP x t Lam pack x t Term structure Renaming and functors instance Functor Tm where rename0 a Eq a a a a a rename0 x y z z x y otherwise z rename f a Functor f Eq a a a f a f a rename fmap rename0 swap0 a Eq a a a a a swap0 x y z z y x z x y otherwise z swap f a Functor f Eq a a a f a f a swap fmap swap0 wk f a b Functor f a b f a f b wk fmap injMany Substitution and monads instance Monad Tm where return a a Tm a return Var a b Tm a a Tm b Tm b Var x θ θ x Lam s θ Lam s θ App t u θ App t θ u θ liftSubst f v a b Functor f Monad f v a f b a v f b v liftSubst θ Old x fmap Old θ x liftSubst θ New x return New x f a b Functor f Monad f f Succ a a f b f Succ b s θ unpack s λ x t pack x t liftSubst x θ substituteOut f v a Monad f v f a f a v f a substituteOut x t u u λ y case y of New t Old x return x Traversable instance Traversable Tm where traverse f a b Applicative f a f b Tm a f Tm b traverse f Var x Var f x traverse f App t u App traverse f t traverse f u traverse f Lam t unpack t λ x b lamP x traverse bitraverse f pure b bitraverse f a a b b Functor f a f a b f b a b f a b bitraverse f Old x Old f x bitraverse g New x New g x closed f a b Traversable f f a Maybe f b closed traverse const Nothing Foldable instance Foldable Tm where foldMap a m Monoid m a m Tm a m foldMap foldMapDefault toList t a Foldable t t a a elem t a Foldable t Eq a a t a

    Original URL path: http://nicolaspouillard.fr/talks/names-for-free-haskell-symposium/names-for-free.html (2015-10-11)
    Open archived version from archive

  • fun-universe: Tracking space and time through a restricted universe
    E is semantically secure iff forall efficient adversary A advantageSS E A is negligible The adversary R ₐ Bits R ₐ Adv s randomness AdvCont Rₐ M M C Bit Adv R ₐ M M R ₐ C Bit Enc Adv Bit R ₐ R Bit E A ₀ A ₁ b rₐ r d where m A ₀ rₐ c E m b r d A ₁ rₐ c Transformers EncTr Enc Enc AdvTr Adv Adv encTr EncTr advTr AdvTr E encTr E A advTr A advantageSS E A advantageSS E A A universe for simple data record Universe Set Set Set where constructor mk field Set Bit Set Set Set Set Vec Set ℕ Set Bits Vec Bit Instances of this universe Set U Universe Set Set U mk Bit Vec Bits U Universe ℕ Bits U mk 0 1 flip Fin U Universe ℕ Fin U mk 1 2 U Universe U Agda figures out that there is only one such universe A universe of functions over simple data record FunUniverse Set Set Set₁ where constructor field universe Universe Set Set Set Set i ᵇ o Bits i Bits o Endo A A A Instances of this universe agdaFunU FunUniverse Set agdaFunU Set U λ A B A B bitsFunU FunUniverse ℕ bitsFunU Bits U λ i o Bits i Bits o finFunU FunUniverse ℕ finFunU Fin U λ i o Fin i Fin o constFunU Set FunUniverse constFunU A U λ A circuitFunU FunUniverse ℕ circuitFunU Bits U Circuit syntax data ℕ ℕ Set where rewire i o Fin o Fin i i o cost 0 time o space m n o n o m n m o cost sum time and space m n o p m o n p m n o p cost

    Original URL path: http://nicolaspouillard.fr/publis/fun-universe-aim16.html (2015-10-11)
    Open archived version from archive