複数のユーザーアカウントでタスクを非表示にする

複数のユーザーアカウントでタスクを非表示にする

私は現在、クラスタープログラミングプロセスの課題を完了しています。クラスにはクラスタアカウントが与えられているため、SSHを介してログインして操作を完了できます。問題は、クラスの全員がアカウントを共有することです。各学生は独自のカタログを作成し、その中で作業します。

明らかに1つの問題は、学生がお互いの作品を見て盗むことができるということです。課題が提出される前に、人々が私の仕事を見ることを望まない。

クラスタにはバージョン管理システムがないため、マイコンピュータからリポジトリをインポートしてタスクを処理し、プッシュして操作するたびにクラスタのコンテンツを削除することはできません。

他の人が自分の仕事を見ないようにする最善の方法は何ですか?通常私は私のコンピュータで作業し、締め切りにサーバーにアップロードします。しかし、私は独自のクラスターを持っていないので、実際に私たち全員のアカウントを使用する必要があります。

はい、信じるかどうか、これは実際に私が直面している現実世界の問題であり、仮想の問題ではありません。

答え1

この問題を解決する本当の方法は、先生と相談して一人で会計をさせたり、課題をグループ課題に変えることです。彼/彼女がそうすることができないか、そうでない場合、私は他の学生の盗作の試みを無視します。彼らがあなたの仕事をコピーしても、何も失うことなく単に失うだけです。

つまり、ソースコードを他の人が事実上アクセスできないようにする方法があります。

you@local$ ssh shared@cluster "gcc -x c -o yourdir/secret -" < source.c

gcc コマンドの最後にダッシュが表示されます。これは、gccがstdinからソースコードを読み取ることを意味します。これにより、source.cローカルコンピュータからyourdir/secretクラスタにコンパイルされます。秘密のソースコードは、クラスタ内の「実際の」ファイルとして存在しません。一部のバッファではストリームとしてのみ存在します(sshdプロセスでは仮定)。

cコードがCで書かれていない場合は、オプションを変更する必要があります-x c。よりこここれについて詳しく学んでください。

他の学生はまだあなたのコンパイル済みファイルをインポートしてデコンパイルできます。これらのリスクを最小限に抑えるために、コンパイルおよび実行後すぐにファイルを削除できます。

you@local$ ssh shared@cluster "gcc -x c -o yourdir/secret - && yourdir/secret ; rm yourdir/secret" < source.c

妄想がひどい人なら、実際のgccを実行していることを確認する必要があります。他の学生は、コンパイル前にソースコードを保存するgccの周りにラッパーを作成し、そのラッパーをパスに配置できます。実際のrmも実行する必要があります。

you@local$ ssh shared@cluster "/usr/bin/gcc -x c -o yourdir/secret - && yourdir/secret ; /bin/rm yourdir/secret" < source.c

答え2

Afaik、自分から何かを効果的に隠す方法はありません。ドットフォルダのディープリンクにコードを隠すことができますが、コードを見ることができれば、クラスメートも見ることができます。彼らはあなたです。コードを使用するには、コードを確認する必要があります。

あなたができることは、VirtualBoxなどの同様のシステムまたは同じOS(アーキテクチャ参照)を使用する別のシステムを設定し、このシステムにのみコードを書いてコンパイルし、バイナリのみをクラスタにコピーしてコピーすることです。キューに送信します。
敵軍はまだバイトコードにアクセスできますが、ビットとバイトを理解することはCソースコードを理解するよりもはるかに困難です;-)

答え3

完璧な答えは暗号化です。ただし、コンピュータからデータを抽出できない場合は、ディスク、ボリューム、またはファイル暗号化ソフトウェアをインストールできません。

つまり、教師は自分が何をしているのかを知る必要があり、誰もが公共スペースを使用することを選択した場合、その背後には理由があるはずです。たぶん信頼と協力を学ぶためですか?彼らに尋ねるのはどうですか?

編集:サーバーからデータをインポートできるため、使用しませんかrsync

答え4

暗号化トピックでviまたはvimを使用してコードを編集する場合は、vimの組み込み暗号化:vim -x myfile.c新しいファイルに使用できます。

vim 7.3以前は簡単にハッキングできましたが、少なくとも日常的な検索は不可能でした。

関連情報