
CrackLord은 확장 가능하고, 플러그 가능하며, 분산된 시스템으로, 비밀번호 크래킹뿐만 아니라 많은 컴퓨팅 자원이 필요한 모든 작업을 위해 설계되었습니다. 더 정확히 말하면, CrackLord는 CPU, GPU, 네트워크 등과 같은 자원을 여러 하드웨어 시스템에서 단일 큐잉 서비스(Resource와 Queue라는 두 가지 기본 서비스)로 로드 밸런싱하는 방법입니다. 이 시스템은 작업 자체를 더 빠르게 만들지는 않지만, 관리하기 쉽게 만들어 줍니다.
위 이미지에서 볼 수 있듯이 CrackLord에는 세 가지 주요 구성 요소가 있습니다:
릴리스마다 패키지 세트를 빌드하여 제공합니다. 바로 사용하고 싶다면 여기의 지침을 따르면 됩니다.
소스에서 빌드하려면 먼저 GOPATH가 설정된 Go 빌드 환경이 필요합니다. 또한 코드에서 사용한 다양한 라이브러리와 플러그인을 가져오려면 Git과 Mercurial이 설정되어 있어야 합니다.
먼저 cracklord 자체를 가져옵니다.
go get github.com/jmmcatee/cracklord
다음으로 Resource 데몬과 Queue 데몬에 필요한 모든 의존성을 다운로드합니다.
go get github.com/jmmcatee/cracklord/cmd/queued
go get github.com/jmmcatee/cracklord/cmd/resourced
이제 Queue 데몬과 Resource 데몬을 실제로 빌드할 수 있습니다.
go build github.com/jmmcatee/cracklord/cmd/queued
go build github.com/jmmcatee/cracklord/cmd/resourced
마지막으로 Resource 데몬과 Queue 데몬을 실행할 수 있습니다. 두 데몬은 각각 cmd/queued 및 cmd/resourced 디렉터리에 있습니다. 또한 다양한 구성 파일을 설정해야 합니다. 이에 대한 정보는 위키에서 확인할 수 있습니다.
참여하는 가장 쉬운 방법은 새로운 도구 플러그인을 작성하는 것입니다. 테스트, 연구 또는 작업에 사용하는 도구가 있고 이를 통합하고 싶다면 매우 쉽게 새로운 도구를 작성하여 Pull Request를 보내주세요. 가능한 한 빨리 통합하도록 하겠습니다. plugins 디렉터리에는 지침을 제공하기 위해 빈 도구를 만들어 두었습니다. 또한 Resource와 상호 작용하는 멋진 방법이 있다면 Resource Manager 플러그인을 작성할 수도 있습니다. 예를 들어 아직 지원하지 않는 클라우드 서비스나 작업을 수행하는 새로운 방법이 있을 수 있습니다.
Go 언어의 특성상 모든 도구를 컴파일해야 하므로, 공유하고 싶은 것을 만들었다면 Pull Request를 보내주세요. 테스트를 거쳐 모두가 사용할 수 있도록 배포하겠습니다.
Queue 데몬은 접근을 위해 표준 API를 제공합니다. 또한 동일한 API를 사용하는 표준 웹 GUI를 작성했습니다. 그러나 더 나은 GUI를 만들 수 없다는 의미는 아닙니다! 또한 워크플로에서 일반적인 작업을 자동화하는 몇 가지 스크립트를 작성할 계획입니다. 스크립트를 만들었다면 링크를 보내거나 Pull Request를 보내주세요. 적절한 위치를 찾아 크레딧을 표시하겠습니다!
모든 작업에 대한 문서를 최신 상태로 유지하기 위해 노력하고 있지만, 사용 방법, 튜토리얼 또는 예제는 항상 더 필요합니다. 이에 대한 도움을 주시면 감사하겠습니다. 위키로 이동하여 수정하거나 추가할 내용이 있는지 확인해 주세요!
물론 CrackLord Queue 데몬과 Resource 데몬 자체에 대해 작업할 수도 있습니다. 이슈 목록이 있으며, 이러한 이슈를 해결하는 데 도움을 주시면 매우 감사하겠습니다.