Stego / index.html
CVNSS's picture
Rename stego.html to index.html
c0e0ce3 verified
<!DOCTYPE html>
<html lang="vi">
<head>
<meta charset="UTF-8">
<title>Kỹ thuật giấu tin trong ảnh (Steganography) - Trực tuyến</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css">
</head>
<body>
<div class="container">
<div class="page-header">
<h1>Công cụ giấu tin trong ảnh</h1>
</div>
<ul class="nav nav-tabs" id="tabs" data-tabs="tabs">
<li role="presentation" class="active">
<a href="#encode" data-toggle="tab">Giấu tin</a>
</li>
<li role="presentation">
<a href="#decode" data-toggle="tab">Giải mã</a>
</li>
</ul>
<div id="my-tab-content" class="tab-content">
<!-- Tab Giấu tin -->
<div class="tab-pane active" id="encode">
<div>
<h2>Giấu tin vào ảnh</h2>
<p class="alert alert-info">
Để giấu một thông điệp vào ảnh, bạn chọn ảnh muốn sử dụng, nhập nội dung tin nhắn và bấm nút <strong>Giấu tin</strong>.<br/>
Sau khi xong, bạn hãy lưu lại ảnh cuối cùng, ảnh này đã chứa thông điệp ẩn của bạn.<br/>
Lưu ý: ảnh càng lớn càng giấu được nhiều thông tin hơn. Nếu bạn nhập quá nhiều chữ cho một ảnh nhỏ, hệ thống sẽ báo.<br/><br/>
Lưu ý: Bạn chỉ được phép dùng CVNSS4.0 mới hiệu quả, xem thêm https://chuvnsongsong.com Ảnh và nội dung bạn giấu sẽ <strong>không bao giờ</strong> gửi lên mạng, tất cả thao tác đều xử lý trên trình duyệt của bạn.
</p>
<form class="form">
<div class="form-group">
<input class="form-control" type="file" name="baseFile" onchange="previewEncodeImage()">
</div>
<div class="form-group">
<textarea class="form-control message" rows="3" placeholder="Nhập nội dung tin nhắn cần giấu ở đây"></textarea>
</div>
<div class="form-group">
<button class="encode btn btn-default pull-right" onclick="encodeMessage()">Giấu tin</button>
</div>
</form>
<div class="clearfix"></div>
</div>
<div class="error" style="display: none;"></div>
<div class="binary" style="display: none;">
<h3>Dạng nhị phân của tin nhắn</h3>
<textarea class="form-control message" style="word-wrap:break-word;"></textarea>
</div>
<div class="images" style="display: none;">
<div class="original" style="display: none;">
<h3>Ảnh gốc</h3>
<canvas></canvas>
</div>
<div class="nulled" style="display: none;">
<h3>Ảnh chuẩn hóa</h3>
<canvas></canvas>
</div>
<div class="message" style="display: none;">
<h3>Ảnh đã giấu tin (chuột phải <span class="glyphicon glyphicon-arrow-right"></span> lưu ảnh)</h3>
<canvas></canvas>
</div>
</div>
</div>
<!-- Tab Giải mã -->
<div class="tab-pane" id="decode">
<div>
<h2>Giải mã tin trong ảnh</h2>
<p class="alert alert-info">
Để lấy nội dung đã được giấu, bạn chỉ cần chọn ảnh và bấm <strong>Giải mã</strong>.<br/><br/>
Lưu ý: Ảnh và nội dung sẽ <strong>không bao giờ</strong> gửi lên mạng, mọi thao tác đều thực hiện trên máy bạn.
</p>
<form class="form">
<div class="form-group">
<input class="form-control" type="file" name="decodeFile" onchange="previewDecodeImage()">
</div>
<div class="form-group">
<button class="decode btn btn-default pull-right" onclick="decodeMessage()">Giải mã</button>
</div>
</form>
<div class="clearfix"></div>
</div>
<div class="binary-decode" style="display: none;">
<h3>Nội dung đã giấu</h3>
<textarea class="form-control message" style="word-wrap:break-word;"></textarea>
</div>
<div class="decode" style="display: none;">
<h3>Ảnh đầu vào</h3>
<canvas></canvas>
</div>
</div>
</div>
<footer style="text-align: center; margin-top: 20px; margin-bottom: 10px;">
&copy; 2025 bởi <a href="mailto:chuvnsongsong@gmail.com">Long Ngo</a> | 1 sản phẩm của CVNSS4.0
</footer>
</div>
<style>
canvas {
max-width: 100%;
}
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script>
<script type="text/JavaScript" src="script.js"></script>
</body>
</html>