ROB BOWDEN: Tá mé Rob, agus a ligean ar a fháil scáineadh. Mar sin, cuimhnigh ó na spec pset go táimid ag dul a bheith de dhíth orthu a bhaint as an feidhm crypt. Chun an leathanach fear, tá muid beirt hash shainiú _xopensource. Ná bíodh imní ort faoi cén fáth ní mór dúinn a dhéanamh go. Agus freisin hash áireamh unistd.h. Mar sin, nuair a tá go amach as an mbealach seo, a ligean ar a fháil chun an clár iarbhír. Is é an chéad rud is gá dúinn a dhéanamh a dhéanamh cinnte an t-úsáideoir isteach a criptithe bailí pasfhocal ar an líne ordaithe. Cuimhnigh go bhfuil an clár ceaptha a reáchtáil mar ponc Slais crack, agus ansin téad criptithe. Mar sin anseo tá muid ag seiceáil a dhéanamh cinnte go go argc dtí dhá más mian linn a leanúint ar aghaidh leis an gclár. Mura bhfuil argc dhá, a chiallaíonn go ceachtar Ní raibh an t-úsáideoir dul isteach ar criptithe pasfhocal ar an líne ordaithe, nó iad tháinig níos mó ná díreach an criptithe pasfhocal ar an líne ordaithe, ina gcás nach bhfuil a fhios againn cad a dhéanamh leis an argóintí. Mar sin, má bhí argc dhá, is féidir linn leanúint ar aghaidh. Agus anseo, táimid ag dul chun a dhearbhú a criptithe athraitheach. Sin ag dul ach a ailias an bunaidh argv1 ionas go mbeidh ar fud an clár, nach bhfuil againn a ghlaoch argv1 air, a ansin tá tú ag smaoineamh faoi ​​cad atá i gceist i ndáiríre. Mar sin, ar deireadh, ba mhaith linn a bhailíochtú go an focal faire criptithe an t-úsáideoir D'fhéadfadh a bheith i ndáiríre isteach do phasfhocal criptithe. Per an leathanach fear de crypt, an Ní mór focal faire criptithe a bheith 13 carachtair fada. Suas anseo, faoi deara go bhfuil muid ag hash sainithe chriptiú fad mar 13. Mar sin, tá muid ag déanamh ach a bheith cinnte go bhfuil an fad teaghrán ar an criptithe Tá focal faire 13. Agus más rud é nach bhfuil sé, ba mhaith linn chun éirí as an gclár. Mar sin, nuair a tá go amach as an mbealach seo, is féidir linn anois iarracht iarbhír a aimsiú cad iad na pasfhocal gur thug an criptithe raibh an focal faire. Anseo, ba mhaith linn a grab an salann as an focal faire criptithe. Cuimhnigh, in aghaidh an leathanach fear, go bhfuil an chéad dá carachtair de criptithe téad, is maith anseo - 50ZPJ agus mar sin de - an chéad dá carachtair a thabhairt dúinn an salann a úsáideadh san fheidhm crypt. Agus anseo, feicimid go raibh an salann ha. Mar sin, ba mhaith linn a chóipeáil an chéad dá carachtair, fad salann a bheith hash mar dhá. Ní mór dúinn a chóipeáil an chéad dá carachtair isteach sa eagar, salann. Fógra gur gá dúinn fhad salann móide amháin, ós rud is gá dúinn fós null terminator ag an deireadh ár salann. Ansin, táimid ag dul chun a dhearbhú an eagar, aoi, ar fad max méid móide amháin, áit a bhfuil uas fad hash sainithe mar ocht, ós rud é an focal faire uasta Tá ocht carachtair ar fad. Agus táimid ag dul a úsáid a iterate thar gach teaghráin is féidir go bhféadfadh a bheith focal faire bailí. Mar sin, má tá na carachtair bailí i focal faire raibh ach a, b, agus c, ansin ba mhaith linn a iterate thar a, b, c, aa, ba, ca, agus mar sin de, go dtí go a fháil againn a fheiceáil cccccccc - ocht c ar. Agus más rud é nach bhfuil muid síos bailí pasfhocal, ansin is gá dúinn a rá go bhfuil an Ní raibh teaghrán criptithe bailí chun tús a chur leis. Mar sin anois, a bhaint amach againn seo agus 1 lúb. Fógra go chiallaíonn go bhfuil sé le lúb gan teorainn. Fógra nach bhfuil aon ráiteas sos taobh istigh den lúb gan teorainn. Tá ar ais ach ráitis. Mar sin, táimid riamh ag súil i ndáiríre a scoir an lúb. Táimid ag súil ach amháin chun éirí as an gclár. Mé leis an ráiteas seo a phriontáil chun an barr an lúb a phriontáil díreach amach cad é ár buille faoi thuairim reatha ag cad é an focal faire. Anois, cad é an lúb ag déanamh? Tá sé looping thar gach teaghráin féidir d'fhéadfadh a bheith focal faire bailí. Is é an chéad rud a táimid ag dul a dhéanamh a chur ar ár buille faoi thuairim reatha cad é an Tá focal faire. Beidh muid a chur ar an salann go rug muid ó an teaghrán criptithe, agus táimid ag dul a chriptiú an buille faoi thuairim. Beidh sé seo a thabhairt dúinn ar buille faoi thuairim criptithe, a bhfuil muid ag dul chun comparáid a dhéanamh i gcoinne an teaghrán criptithe an t-úsáideoir isteach ag an líne ordaithe. Má tá siad mar an gcéanna, agus sa chás sin Beidh teaghrán inchomparáide ar ais náid, má tá siad mar an gcéanna, buille faoi thuairim ansin a bhí an pasfhocal a ghintear an criptithe téad, agus sa chás sin is féidir linn a phriontáil go mar ár phasfhocal agus ar ais. Ach más rud é nach raibh siad mar an gcéanna, go Ciallaíonn ár buille faoi thuairim a bhí mícheart. Agus ba mhaith linn a iterate a an buille faoi thuairim seo chugainn bailí. Mar sin, go bhfuil an méid seo, cé go Tá lúb ag iarraidh a dhéanamh. Tá sé ag dul a iterate ár buille faoi thuairim leis an buille faoi thuairim seo chugainn bailí. Fógra go nuair a deirimid go Tá carachtar ar leith in ár buille faoi thuairim Shroich an tsiombail max, suas anseo Tá hash shainmhíniú mar tilde, ós rud é go bhfuil an carachtar luach is mó ASCII gur féidir le úsáideoir dul isteach ar an méarchlár nuair a shroicheann, an carachtar an max siombail, ansin ba mhaith linn a sheoladh ar ais sé leis an siombail íosta, Tá spás, arís an ASCII is ísle siombail luach gur féidir le úsáideoir dul isteach ar an méarchlár. Mar sin, táimid ag dul a shocrú go leis an tsiombail íosta. Agus ansin táimid ag dul chun dul ar aghaidh go dtí an chéad charachtar. Mar sin, cé go bhfuil ár n-guesses ag dul a iterate? Bhuel, má tá na carachtair bailí a, b, agus c, ansin má thosaigh muid le, beidh sé iterate go b, beidh sé iterate go c. Is é ár n-c siombail max, mar sin beidh orainn a shocrú c ar ais chuig, an tsiombail is lú. Agus ansin beidh orainn a iterate innéacs leis an carachtar seo chugainn. Mar sin, má bhí an buille faoi thuairim bunaidh c, an chéad cheann eile Tá carachtar ag dul a bheith ar an margadh saothair terminator. Síos anseo, faoi deara go más rud é an carachtar go ba mhaith linn anois a Ba incrimint an Críochnaitheoir null, ansin tá muid ag dul chun é a leagtar ar an siombail íosta. Mar sin, má bhí an buille faoi thuairim c, ansin ár buille faoi thuairim nua ag dul a bheith aa. Agus má bhí ár buille faoi thuairim bunaidh cccc, ansin ár buille faoi thuairim nua ag dul a bheith AAAAA. Mar sin, aon uair a shroicheann muid an teaghrán uasta d'fhad atá tugtha, ansin tá muid ag dul a chur i bhfeidhm chun an teaghrán íosta an fad seo chugainn, rud a a bheith díreach gach carachtair de an tsiombail íosta. Anois, cad é an tseiceáil a dhéanamh anseo? Bhuel, ar athraíodh a ionad má innéacs ón ochtú carachtar na naoi carachtar - mar sin táimid ag cuir ocht c mar ár n roimhe seo buille faoi thuairim - ansin tá innéacs ag dul chun díriú ar an deireanach null Críochnaitheoir ar ár buille faoi thuairim eagar, a nach bhfuil i gceist a iarbhír a úsáid in ár focal faire. Mar sin, má táimid dírithe ar sin null seo caite terminator, ansin ní mór dúinn aimsigh pasfhocal go bhfuil baint úsáide as bailí ach ocht carachtair, rud a chiallaíonn nach bhfuil aon pasfhocal bailí go encrypts leis an teaghrán tugtha. Agus ní mór dúinn a phriontáil go, ag rá Ní raibh muid ábalta teacht bailí pasfhocal, agus ar ais. Mar sin, tá an lúb ag dul a iterate thar gach teaghráin féidir. Má fhaigheann sé gur encrypts aon leis an teaghrán criptithe ag súil leis, beidh sé ar ais go phasfhocal. Agus é nach ndéanann sé teacht ar aon rud, ansin beidh sé ar ais, a phriontáil go bhfuil sé Ní raibh in ann aon rud a aimsiú. Anois, faoi deara go iterating thar gach teaghráin is féidir ag dul is dócha go ghlacadh ar feadh tamaill. A ligean ar a fheiceáil i ndáiríre conas a fada a thógann. A ligean ar a dhéanamh ar crack. Bhuel, Oops - a deir sé undefined tagairt do crypt. Mar sin, cuimhnigh, le haghaidh leagann an p spec agus freisin ar an leathanach fear do crypt go bhfuil muid Ní mór a nascadh i crypt. Anois, an mhainneachtain a dhéanamh ordú nach bhfuil a fhios go bhfuil tú ag iarraidh úsáid a bhaint as an bhfeidhm sin. Mar sin, a ligean ar chóipeáil an ordaithe cliant agus díreach a chur ar aghaidh go dtí an deireadh de, crypt nascadh. Anois, cuireann sé le chéile. Mar sin, a ligean ar siúl crack ar leith teaghrán criptithe - mar sin Caesar. Mar sin, go raibh go leor go tapa. Fógra go dar críoch sin ar 13. Bhuel, focal faire criptithe Caesar tharlaíonn a bheith 13. Mar sin, a ligean ar iarracht focal faire eile. Ligean ar ghlacadh criptithe Hirschhorn ar pasfhocal agus iarracht a scoilteadh go. Mar sin, faoi deara againn bainte amach cheana féin trí carachtair. Agus tá muid ag iterating thar gach is féidir teaghráin trí-charachtar. Ciallaíonn sin againn cheana a chríochnú iterating thar gach ceann agus is féidir agus dhá teaghráin carachtar. Anois, tá sé cosúil go bhfuil an dul chun ghlacadh agus roimh teacht againn ar an teaghráin ceithre-charachtar. D'fhéadfadh sé a ghlacadh ar feadh cúpla nóiméad. Ní raibh sé a ghlacadh cúpla nóiméad. Táimid ar an teaghráin ceithre-charachtar. Ach anois, ní mór dúinn a iterate thar gach is féidir teaghráin ceithre-charachtar, a a d'fhéadfadh a ghlacadh b'fhéidir 10 nóiméad. Agus ansin nuair a shroicheann muid cúig charachtar teaghráin, ní mór dúinn a iterate thar gach díobh siúd, d'fhéadfadh tairbhe a ghlacadh cúpla uair an chloig. Agus ní mór dúinn a iterate thar gach is féidir sé charachtar teaghráin, a mb'fhéidir go dtógfadh sé cúpla lá agus mar sin de. Mar sin, d'fhéadfadh sé a ghlacadh d'fhéadfadh a bheith an-fhada am a iterate thar gach is féidir ocht-charachtar agus teaghráin níos lú. Mar sin, faoi deara go nach bhfuil sé seo gá gur algartam an-éifeachtach a aimsiú le haghaidh focal faire. D'fhéadfá smaoineamh go bhfuil Tá bealaí níos fearr. Mar shampla, an ZYX focal faire! 32ab is dócha nach bhfuil focal faire an-choitianta, de bhrí go bhfuil an focal faire 12345 is dócha a lán níos coitianta. Mar sin, bhealach amháin ag iarraidh a fháil focal faire níos tapúla é chun breathnú díreach ag faire go bhfuil níos coitianta. Mar sin, mar shampla, is féidir linn iarracht a dhéanamh focail a léamh as foclóir agus iarracht a dhéanamh ar fad na focail sin mar ár guesses phasfhocal. Anois, b'fhéidir focal faire nach bhfuil chomh simplí sin. B'fhéidir go raibh an t-úsáideoir beagán cliste agus iarracht ceangal a roinnt le an deireadh focail. Mar sin, b'fhéidir go raibh a gcuid focal faire password1. Mar sin, is féidir leat triail a iterating thar focail go léir san fhoclóir le ceann amháin gceangal leis an deireadh é. Agus ansin b'fhéidir tar éis á dhéanamh sin, beidh tú mar fhoscríbhinn le beirt go dtí an deireadh é. Nó b'fhéidir go bhfuil an t-úsáideoir ag iarraidh a bheith fiú níos cliste, agus ba mhaith leo a gcuid pasfhocal a bheith "hacker," ach tá siad ag dul a chur in ionad gach cás de e ar le dtriúir. Mar sin, d'fhéadfaí tú é seo a dhéanamh freisin. Iterate thar na focail go léir san fhoclóir ach carachtair a ionad breathnú cosúil le huimhreacha leis na huimhreacha. Mar sin, ar an mbealach seo, d'fhéadfadh tú a ghabháil fiú níos mó passwords go bhfuil go leor coitianta. Ach sa deireadh, an t-aon bhealach is féidir leat ghabháil gach focal faire a brute bhfeidhm iterate thar gach teaghráin féidir. Mar sin, sa deireadh, gá duit a iterate thar gach teaghráin ó charachtar amháin go ocht carachtair, a d'fhéadfadh a ghlacadh tréimhse an-fhada, ach ní mór duit é a dhéanamh. Is é mo ainm Rob Bowden. Agus is é seo Crack.