[{"data":1,"prerenderedAt":191},["ShallowReactive",2],{"project-26681405":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":14,"rank_in_year":15,"shown_in_year":16,"top":17,"tier":18,"category":19,"subcategory":20,"format":21,"keywords":22,"reception":27,"sentiment":28,"stance_mix":29,"scored_comments":33,"aspects":34,"strip":38,"post_text":28,"what":40,"said":58,"maker_in_thread":120,"shape":129,"grid":133,"attempts":148,"same_week":153,"maker_shows":183,"maker_hidden":184,"reader_version":185,"card":186},"26681405","MagicSquared","Magic Magic Link Authentication","title","Show HN: MagicSquared – Magic Magic Link Authentication","https:\u002F\u002Fmagicsquared.net\u002F","magicsquared.net","amadeuspagel",1617460616,2021,7,2231,2533,89,"shown","security_privacy","authentication","api",[23,24,25,26],"magic link","passwordless authentication","email login","jwt","quiet",null,{"positive":30,"neutral":31,"mixed":31,"critical":32},0,1,2,4,{"design":35,"privacy":36,"execution":37},{"positive":30,"critical":31},{"positive":30,"critical":30},{"positive":30,"critical":31},[31,39,30,31,30,39,30],3,{"problem":41,"audience":28,"pricing":28,"motivation":28,"time_to_build":28,"stack":51,"openness":57,"stage":57,"team_size":57},{"value":42,"source":43,"evidence":44},"Passwordless login for websites using emailed magic links","inferred",[45,47],{"id":46},"post",{"id":48,"by":49,"text":50},"26681941","alin23","The idea is great and the instructions clear and easy to follow for a quick integration. (the localhostmagicsquared.net workaround is a brilliant idea) But I see you are using…",[52],{"value":53,"source":54,"evidence":55},"RS256 JWT signing","commenter",[56],{"id":48,"by":49,"text":50},"unknown",{"praise":59,"objections":68,"requests":101,"questions":110,"alternatives":119},[60,64],{"value":61,"source":54,"evidence":62},"Easy integration with clear instructions",[63],{"id":48,"by":49,"text":50},{"value":65,"source":54,"evidence":66},"Localhost workaround is a clever idea",[67],{"id":48,"by":49,"text":50},[69,76,83,87,94],{"value":70,"source":54,"evidence":71},"Server holding the private key could forge logins to any site using it",[72,73],{"id":48,"by":49,"text":50},{"id":74,"by":11,"text":75},"26682592","I don't think this problem is solvable. The server must be able to generate signed JWTs, so if you have access to the server, you'll be able to do that. The cryptographic details…",{"value":77,"source":54,"evidence":78},"Magic link emails were slow to arrive",[79],{"id":80,"by":81,"text":82},"26690472","longnguyen","Tried the demo. Took forever to deliver the email (still haven’t received it yet) We built an in-house solution for this and the biggest issue was bots opening the link. You will…",{"value":84,"source":54,"evidence":85},"Email link bots may consume links before users click them",[86],{"id":80,"by":81,"text":82},{"value":88,"source":54,"evidence":89},"Privacy policy was missing",[90],{"id":91,"by":92,"text":93},"26681762","dotmanish","Where’s\u002FWhat’s the privacy policy?",{"value":95,"source":54,"evidence":96},"UI looks inconsistent",[97],{"id":98,"by":99,"text":100},"26709264","ayushinigam1999","The UI could be updated by magicsquared.net. It's a little inconsistent.",[102,106],{"value":103,"source":54,"evidence":104},"Provide a privacy policy",[105],{"id":91,"by":92,"text":93},{"value":107,"source":54,"evidence":108},"Improve UI consistency",[109],{"id":98,"by":99,"text":100},[111,115],{"value":112,"source":54,"evidence":113},"Is there a more secure way to avoid forging risk without much friction?",[114],{"id":48,"by":49,"text":50},{"value":116,"source":54,"evidence":117},"Where is the privacy policy?",[118],{"id":91,"by":92,"text":93},[],{"comments":39,"answered":32,"key":121},[122,123,126],{"id":74,"text":75},{"id":124,"text":125},"26693418","I just tried requesting the email again and got it immidiately. Could you check your spam folder? And if you find it there, mark it as \"not spam\"? Bots opening links shouldn't be…",{"id":127,"text":128},"26681776","Nothing is stored longer then necessary. Email addresses are immidiately deleted once they're verified.",{"commenters":130,"max_depth":32,"maker_replies":39,"first_comment_mins":131,"lifespan_hours":132},5,47,65,[134,136,138,140,142,144,146],[98,30,31,135,99,30],"project\u002Fcritical\u002Fdesign",[48,31,39,137,49,30],"project\u002Fmixed\u002Fprivacy",[74,31,30,139,11,31],"commenter\u002Fneutral\u002Fprivacy",[80,32,31,141,81,30],"project\u002Fcritical\u002Fexecution",[124,32,30,143,11,31],"project\u002Fneutral\u002Fexecution",[91,39,39,145,92,30],"project\u002Fneutral\u002Fprivacy",[127,39,30,147,11,31],"project\u002Fpositive\u002Fprivacy",[149,150],{"id":4,"t":12,"points":14,"comments":14},{"id":151,"t":152,"points":32,"comments":30},"27674344",1624965919,[154,159,164,169,174,178],{"id":155,"name":156,"points":157,"category":158},"26691626","pdf (paged.js PDF guide)",742,"dev_tools",{"id":160,"name":161,"points":162,"category":163},"26700770","aava.sh",425,"productivity",{"id":165,"name":166,"points":167,"category":168},"26659553","Mail Studio",395,"creative",{"id":170,"name":171,"points":172,"category":173},"26661223","Simplenetes",296,"infrastructure",{"id":175,"name":176,"points":177,"category":163},"26673221","Grit",255,{"id":179,"name":180,"points":181,"category":182},"26719105","DragonRuby",234,"languages",10,false,"v2",{"id":187,"name":5,"line":6,"ai":184,"cat":19,"year":13,"points":14,"comments":14,"rec":27,"s":28,"top":17,"kw":188,"maker":11,"domain":10,"tier":18,"attempts":32,"strip":189,"url":9,"mix":190,"praise":61,"objection":70,"sub":20},26681405,[23,24,25,26],"1301030",[30,31,31,32],1794036605260]