簡體   English   中英

簡單 C 程序中的 Crypt 函數不起作用

[英]Crypt function in simple C program not working

我是一個菜鳥,試圖弄清楚如何將一個單詞和一個 salt 傳遞給 DES crypt 函數,並打印出一個加密的(很好,加密很差)的密碼。 我已經閱讀了手冊頁和這里的一些帖子(關於 cyppt 和我正在解決的破解問題集),但仍然不確定我的語法需要按照下面的代碼使用什么,它有一個 '對 crypt 的未定義引用。

#include <stdio.h>
#include <unistd.h>
#include <string.h>
#include <crypt.h>

#define _XOPEN_SOURCE

char *crypt(const char *key, const char *salt);

int main(void) {

    char *password = "lol";

    char *salt = "50";

    char *encrypted = crypt(password, salt);

    printf("%s\n", encrypted);
    return 0;
}

// should print 50cI2vYkF0YU2 per CS50 crack exercise example.

在問這個問題之前,我已經查閱了以下內容,但仍然不明白如何讓我的簡單示例工作。 http://pubs.opengroup.org/onlinepubs/009695299/functions/crypt.html https://www.quora.com/How-does-the-crypt-function-work-with-some-examples-of-crypt -function-in-C https://cs50.stackexchange.com/questions/23583/cs-des-based-crypt-function crypt() 函數在 C 中不起作用

編譯時使用: gcc yourfilename.c -lcrypt

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM