Working with backend s3 bucket

i am working on terraform backend with s3 bucket and dynamo db.
if i create multiple state files inside the same s3 bucket it will aquire the lock on the whole bucket not on the key.
for multiple projects multiple buckets and one dynamo db is enough right. any help on this.