Bagaimana cara kerja timeseal? [Tutup]

8

Saya tahu fics (server catur internet gratis: www.freechess.org/) tidak menggunakan program yang disebut timeseal untuk mengukur waktu yang diperlukan pengguna untuk bergerak. Jangka waktu ini adalah beberapa pengukuran waktu pada klien. Mengukur pada klien jauh lebih baik dan lebih adil daripada mengukur waktu di server karena Anda tidak kehilangan waktu hanya dengan memiliki koneksi yang buruk.

Tetapi karena fics memiliki banyak antarmuka untuk dimainkan - apa yang mencegah antarmuka jahat untuk mengatakan bahwa mereka selalu hanya menggunakan 0,1 detik untuk gerakan apa pun? Adakah yang tahu bagaimana ini ditangani?

Just a sidenote: saya tidak ingin membangun antarmuka yang nakal, tapi saya mencoba membangun sesuatu yang serupa yang hanya membutuhkan waktu di sisi klien tetapi tidak mudah untuk ditipu.

Simon Meyer
sumber
2
Ini mungkin pertanyaan yang lebih baik ditanyakan pada pertukaran pemrograman, karena itu tidak benar-benar spesifik catur, bahkan jika implementasi ini. Pada tebakan, ada beberapa bentuk kebingungan yang digunakan, karena Anda tidak dapat mengenkripsi cara kerja dalam memori tanpa memiliki kunci di suatu tempat pada klien. (Atau Anda bisa memilikinya berada di server, tetapi kemudian itu benar-benar mengalahkan titik operasi sisi klien ...)
Jonathan Garber

Jawaban:

12

Saya seorang pemain catur dan programmer. Sebenarnya ada makalah tentang ini 10 tahun yang lalu tentang cap waktu dan keamanan lainnya di ICC. Anda harus membacanya dengan pengertian bahwa segala sesuatu mungkin berbeda sekarang:

Cara Cheat di Catur: Analisis Keamanan dari Klub Catur Internet

Tetapi secara umum, Anda benar. Dimungkinkan untuk memanipulasi waktu yang dilaporkan dalam timeseal (timestamp). Saya sebenarnya sudah melakukannya, bahkan dengan antarmuka resmi ICC, hanya untuk melihat apakah itu bisa dilakukan. Peretasan kecepatan ada untuk banyak game dan saya menggunakan program peretasan kecepatan yang ada untuk memperlambat jam saya alih-alih mempercepatnya (yang biasanya Anda lakukan untuk berlari lebih cepat dalam permainan). Hasilnya adalah permainan yang saya mainkan vs KBNK (bot yang memungkinkan Anda berlatih pasangan B + N), di mana saya mengawinkan komputer setelah sekitar 30 gerakan dalam waktu bermain kurang dari 3 detik. Rata-rata 0,1 detik per gerakan atau lebih pada pasangan yang tidak sepele jelas tidak wajar.

Saya melaporkan efeknya kepada administrator situs, tetapi saya diberi tahu bahwa mereka dapat mendeteksinya. Bahkan, mereka memiliki log prangko waktu penipuan saya terdeteksi (di suatu tempat ... Saya menganggap mereka dapat melihat laporan palsu terang-terangan, serta membandingkannya dengan stempel waktu TCP / IP dan melihat apakah jumlahnya masuk akal). Saya diberitahu bahwa mereka dapat mendeteksi kecurangan semacam itu dan untuk menyenangkan tidak menggunakannya tetapi terima kasih atas perhatian saya.

Jadi, ya mungkin untuk memanipulasi sisi klien apa pun, tetapi juga mungkin bahwa mereka dapat mendeteksi sisi server waktu perangko penipuan. Server catur yang lebih baik biasanya sudah memiliki tim orang yang menyelidiki laporan kecurangan, baik dengan komputer atau manipulasi jam.

Alan
sumber
thx - kertas itu terutama menggambarkan apa yang saya cari.
Simon Meyer