http://theory.stanford.edu/~aiken/moss/
stanford에서 만든 moss라는 프로그램으로 간단히 코드 카피를 체크할 수 있다.
우리가 받을 프로그램은 정확히는 프로그램이 아니고,
그냥 서버로 내가 비교할 파일들을 보내는 perl 스크립트이다.
이 파일들의 카피 여부는 서버가 알아서 잘 판단해주고 그걸 웹에서 보여준다..
맨 위에 있는 링크를 타고 들어가면 위와 같은 글이 뜨는데,
다들 영어를 잘하니까 알겠지만, moss@moss.stanford.edu에 메일을 보내라고 한다.
메일 제목은 아무거나 적어도 되고,
메일 내용만
registeruser
mail username@domain
위와 같은 형식을 유지하면 된다. (여기서 메일 주소 부분만 자기 메일 주소로 수정해주면 된다.)
메일보내고 1~3분 정도 있으면 답장이 온다. (당근 자동답장이지)
대충 위와같이 메일이 온다.
cut here아랫부분을 전부 복사해서
아무 곳에다가 moss.pl 이라는 파일을 만들고 붙여넣는다. (이름을 moss로 해도 상관없다.)
$ sudo chmod ug+x moss.pl
위와 같은 명령어를 입력해서 실행이 가능하도록 바꾸는것도 잊지말자.
참고로 mac os나 ubuntu말고 windows에서 사용하려면,
https://www.youtube.com/watch?v=f7RMWvN0KTc 여기 동영상을 참고하면 되겠다.
외국어로 말하지만 어차피 그림보면 다 이해가 간다. ㅋㅋㅋ
해당 파일은 perl로 작성되었으므로, 당연히 perl이 깔려있어야 한다. 아마 대부분 perl은 깔려 있을것이다.
없으면 역시
$ sudo apt-get install perl
로 깔아준다.
이제 moss.pl이 있는 경로에서 ./moss.pl로 코드 카피를 적발하는 프로그램을 쓸 수 있다.
만약 내가 채점해야하는 코드들이 전부 c언어이면
$ ./moss.pl -l c *.c
또는
$ perl moss.pl -l c *.c
라는 명령어로 실행할 수 있다.
다 실행하고 나면 url하나를 알려주는데, 그 주소를 타고 들어가서 웹에서 확인하면 된다.
위의 스샷에서는 http://mosss.stanfor.end/results/2652.... 이 부분이다.
해당 사이트에 들어가면, 아래와 같이 결과가 나온다.
%는 어느정도 일치하는지를 보여주는데,
물론 적당히 높은거 까서 보면 엄청난 일치율을 보여주는 것을 확인 할 수 있다.
변수명 바꾸고 위치바꾸고 해봐야 moss 손바닥이다. ㅋㅋㅋㅋㅋㅋ
이게 95%나 뜬건데,
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
저 스샷이 전부를 보여주는 건 아니지만 암튼 별짓 다한다 정말 ㅋ
moss를 계속 써야 한다면, ~/.bash_profile에 등록해서 쓰는것도 좋은 방법이다.
만약 c, java 같은 코드들을 전부 섞어서 체크해야 한다면,
$ moss.pl *.c *.java
이런식으로 써주면 된다.
다만, -l 태그를 써서 언어를 확실히 지정해 주는 것이 더 좋다.
아무튼 베끼지 맙시다~!
#코드 #카피 #cheating #moss #code copy #detecting plagiarism
'Development > open sources' 카테고리의 다른 글
오늘 만든 Makefile (PS용) (0) | 2017.01.25 |
---|---|
vim 통합 플러그인 (0) | 2016.12.16 |